.back-to-top-wrapper[data-astro-cid-eymb5ayk]{width:3.75rem;height:3.75rem;position:absolute;right:0;top:0;pointer-events:none}.back-to-top-btn[data-astro-cid-eymb5ayk]{color:var(--primary);font-size:2.25rem;font-weight:700;border:none;position:fixed;bottom:10rem;opacity:1;cursor:pointer;transform:translate(5rem);pointer-events:auto}.back-to-top-btn[data-astro-cid-eymb5ayk] i[data-astro-cid-eymb5ayk]{font-size:1.75rem}.back-to-top-btn[data-astro-cid-eymb5ayk].hide{transform:translate(5rem) scale(.9);opacity:0;pointer-events:none}.back-to-top-btn[data-astro-cid-eymb5ayk]:active{transform:translate(5rem) scale(.9)}.site-navbar-surface[data-astro-cid-5blmo7yk]{border-color:var(--border-subtle);border-top:0;background:color-mix(in srgb,var(--card-bg) 96%,transparent);box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}nav[data-astro-cid-5blmo7yk] a[data-astro-cid-5blmo7yk]{font-size:.86rem;letter-spacing:.005em}project-intelligence{display:contents}.project-intelligence-trigger{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));z-index:80;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.9rem;max-width:calc(100vw - 2rem);border:1px solid color-mix(in srgb,var(--primary) 34%,var(--card-border));border-radius:.85rem;background:var(--card-bg);box-shadow:0 8px 24px #0f172a24;padding:.65rem .9rem;color:var(--theme-accent-text);font:inherit;font-weight:800;line-height:1.2;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background-color .16s ease}.project-intelligence-trigger:hover{border-color:var(--primary);background:var(--btn-regular-bg-hover);transform:translateY(-2px)}.project-intelligence-trigger:active{transform:translateY(0)}.project-intelligence-trigger svg,.project-intelligence-heading-icon svg,.project-intelligence-close svg,.project-intelligence-input-row button svg,.project-intelligence-suggestion-list button svg{width:1.25rem;height:1.25rem;flex:0 0 auto}.project-intelligence-layer{position:fixed;z-index:120;inset:0;isolation:isolate;pointer-events:none}.project-intelligence-layer[hidden]{display:none}.project-intelligence-layer[data-open=true]{pointer-events:auto}.project-intelligence-backdrop{position:absolute;z-index:0;inset:0;width:100%;height:100%;border:0;background:#0f172a70;cursor:default;opacity:0;transition:opacity .18s ease}.project-intelligence-dialog{position:absolute;z-index:1;top:0;right:0;display:flex;width:min(27rem,100vw);height:100vh;height:100dvh;max-height:100dvh;flex-direction:column;border-left:1px solid var(--card-border);background:var(--card-bg);box-shadow:-12px 0 32px #0f172a2e;color:var(--text-primary);overflow:hidden;opacity:0;visibility:hidden;transform:translate3d(100%,0,0);transition:transform .18s ease,opacity .18s ease,visibility 0s linear .18s}.project-intelligence-layer[data-open=true] .project-intelligence-backdrop{opacity:1}.project-intelligence-layer[data-open=true] .project-intelligence-dialog{opacity:1;visibility:visible;transform:translateZ(0);transition-delay:0s}.project-intelligence-header,.project-intelligence-form{flex:0 0 auto;padding:1rem}.project-intelligence-header,.project-intelligence-heading,.project-intelligence-input-row{display:flex;align-items:center;gap:.75rem}.project-intelligence-header{justify-content:space-between;border-bottom:1px solid var(--card-border)}.project-intelligence-heading{align-items:flex-start;min-width:0}.project-intelligence-heading-icon{display:inline-flex;align-items:center;justify-content:center;width:2.45rem;height:2.45rem;flex:0 0 auto;border-radius:.75rem;background:var(--btn-regular-bg);color:var(--primary)}.project-intelligence-heading h2,.project-intelligence-heading p,.project-intelligence-suggestions h3,.project-intelligence-form p,.project-intelligence-message p,.project-intelligence-message h3,.project-intelligence-project-card h4{margin:0}.project-intelligence-heading h2{font-size:1.05rem;line-height:1.35}.project-intelligence-heading p,.project-intelligence-form>p{color:var(--text-secondary);font-size:.78rem;line-height:1.45}.project-intelligence-close,.project-intelligence-input-row button{display:inline-flex;align-items:center;justify-content:center;width:2.65rem;height:2.65rem;flex:0 0 auto;border:1px solid var(--card-border);border-radius:.75rem;background:var(--btn-regular-bg);color:var(--theme-accent-text);cursor:pointer}.project-intelligence-body{min-height:0;flex:1 1 auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:1rem}.project-intelligence-suggestions h3,.project-intelligence-message>h3,.project-intelligence-technologies h3{color:var(--text-secondary);font-size:.76rem;font-weight:800;letter-spacing:.045em;text-transform:uppercase}.project-intelligence-suggestion-list{display:grid;grid-template-columns:1fr;gap:.5rem;margin-top:.65rem}.project-intelligence-suggestion-list button{display:flex;align-items:center;justify-content:space-between;gap:.7rem;min-height:2.75rem;width:100%;border:1px solid var(--card-border);border-radius:.75rem;background:var(--page-bg);padding:.6rem .75rem;color:var(--text-primary);font:inherit;font-size:.85rem;font-weight:650;text-align:left;cursor:pointer}.project-intelligence-suggestion-list button:hover{border-color:var(--primary);background:var(--btn-regular-bg);color:var(--theme-accent-text)}.project-intelligence-messages{display:flex;flex-direction:column;gap:.8rem}.project-intelligence-suggestions:not([hidden])+.project-intelligence-messages{margin-top:1rem}.project-intelligence-message{min-width:0;border-radius:.85rem;font-size:.86rem;line-height:1.55}.project-intelligence-message.is-user{align-self:flex-end;max-width:88%;background:var(--btn-regular-bg);padding:.7rem .85rem;color:var(--theme-accent-text)}.project-intelligence-message.is-assistant{width:100%}.project-intelligence-answer-lead{border-left:3px solid var(--primary);padding:.15rem 0 .15rem .75rem;font-weight:650;overflow-wrap:anywhere;white-space:pre-wrap}.project-intelligence-mode-note{display:inline-flex;margin-bottom:.55rem;color:var(--text-secondary);font-size:.7rem;font-weight:750;letter-spacing:.035em;text-transform:uppercase}.project-intelligence-loading-status{margin:0;color:var(--text-secondary);font-style:italic}.project-intelligence-ai-status-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid var(--card-border);border-radius:.75rem;background:var(--page-bg);padding:.65rem .75rem}.project-intelligence-cancel{min-height:2rem;flex:0 0 auto;border:1px solid var(--card-border);border-radius:.55rem;background:var(--card-bg);padding:.25rem .55rem;color:var(--text-primary);font:inherit;font-size:.72rem;font-weight:750;cursor:pointer}.project-intelligence-cancel:hover{border-color:var(--primary);color:var(--primary)}.project-intelligence-ai-detail{margin-top:.75rem;color:var(--text-secondary);font-size:.72rem;line-height:1.45}.project-intelligence-local-ai{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .7rem;margin-top:.9rem;border-top:1px solid var(--card-border);padding-top:.75rem}.project-intelligence-local-ai-model{flex-basis:100%;margin:0;color:var(--text-secondary);font-size:.68rem;line-height:1.4}.project-intelligence-local-ai-button{min-height:2.25rem;border:1px solid color-mix(in srgb,var(--primary) 45%,var(--card-border));border-radius:.65rem;background:var(--btn-regular-bg);padding:.4rem .65rem;color:var(--theme-accent-text);font:inherit;font-size:.72rem;font-weight:750;cursor:pointer}.project-intelligence-local-ai-button:hover:not(:disabled){border-color:var(--primary)}.project-intelligence-local-ai-button:disabled{cursor:wait;opacity:.65}.project-intelligence-local-ai-status{flex-basis:100%;margin:0;color:var(--text-secondary);font-size:.72rem;line-height:1.45}.project-intelligence-local-ai-download-detail{flex-basis:100%;margin:-.35rem 0 0;color:var(--text-secondary);font-size:.68rem;line-height:1.4}.project-intelligence-local-ai[data-local-ai-state=failed] .project-intelligence-local-ai-status{font-style:italic}.project-intelligence-local-ai-explanation{margin-top:.9rem;border:1px solid var(--card-border);border-radius:.75rem;background:var(--page-bg);padding:.75rem}.project-intelligence-local-ai-explanation h3{margin-top:0}.project-intelligence-local-ai-answer{margin-bottom:0;white-space:pre-wrap}.project-intelligence-sources,.project-intelligence-related{display:flex;flex-wrap:wrap;gap:.4rem}.project-intelligence-sources a,.project-intelligence-related a{display:inline-flex;max-width:100%;min-height:2.1rem;align-items:center;border:1px solid var(--card-border);border-radius:999px;background:var(--page-bg);padding:.35rem .6rem;color:var(--text-primary);font-size:.72rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere;text-decoration:none}.project-intelligence-sources a:hover,.project-intelligence-related a:hover{border-color:var(--primary);background:var(--btn-regular-bg);color:var(--theme-accent-text)}.project-intelligence-message>h3,.project-intelligence-technologies h3{margin-top:1rem;margin-bottom:.55rem}.project-intelligence-project-list{display:flex;flex-direction:column;gap:.7rem;margin:0;padding:0;list-style:none;counter-reset:project-card}.project-intelligence-project-list>li{counter-increment:project-card}.project-intelligence-project-card{position:relative;min-width:0;border:1px solid var(--card-border);border-radius:.85rem;background:var(--page-bg);padding:.85rem}.project-intelligence-project-card h4{padding-right:1.75rem;font-size:.95rem;line-height:1.4}.project-intelligence-project-card h4:before{position:absolute;top:.82rem;right:.85rem;content:counter(project-card,decimal-leading-zero);color:var(--text-secondary);font-family:var(--font-body);font-size:.7rem}.project-intelligence-project-card h4 a{color:var(--text-primary);text-decoration:none}.project-intelligence-project-card h4 a:hover{color:var(--primary);text-decoration:underline;text-underline-offset:.2em}.project-intelligence-project-meta,.project-intelligence-card-chips,.project-intelligence-actions,.project-intelligence-technologies>div{display:flex;flex-wrap:wrap;gap:.35rem}.project-intelligence-project-meta{margin-top:.45rem;color:var(--text-secondary);font-size:.72rem}.project-intelligence-project-meta>span:not(:last-child):after{margin-left:.35rem;content:"·"}.project-intelligence-status{font-weight:750}.project-intelligence-status.is-production{color:#08783e}.dark .project-intelligence-status.is-production{color:#75d69e}.project-intelligence-status.is-prototype,.project-intelligence-status.is-research,.project-intelligence-status.is-concept,.project-intelligence-status.is-demo,.project-intelligence-status.is-unspecified{color:var(--text-secondary)}.project-intelligence-match-reason{margin-top:.6rem!important;color:var(--text-secondary)}.project-intelligence-evidence{margin-top:.65rem;border-left:2px solid var(--primary);background:var(--btn-regular-bg);padding:.55rem .65rem}.project-intelligence-evidence strong{display:block;margin-bottom:.2rem;font-size:.72rem}.project-intelligence-card-chips{margin-top:.65rem}.project-intelligence-card-chips span,.project-intelligence-technologies span{border:1px solid var(--card-border);border-radius:999px;background:var(--card-bg);padding:.18rem .45rem;color:var(--text-secondary);font-size:.68rem;font-weight:650}.project-intelligence-actions{margin-top:.75rem}.project-intelligence-actions a,.project-intelligence-actions button,.project-intelligence-navigation a{display:inline-flex;align-items:center;min-height:2.25rem;border:1px solid var(--card-border);border-radius:.65rem;background:var(--card-bg);padding:.4rem .58rem;color:var(--text-primary);font:inherit;font-size:.72rem;font-weight:750;text-decoration:none;cursor:pointer}.project-intelligence-actions a:hover,.project-intelligence-actions button:hover,.project-intelligence-navigation a:hover{border-color:var(--primary);background:var(--btn-regular-bg);color:var(--theme-accent-text)}.project-intelligence-actions .project-intelligence-primary-action{border-color:color-mix(in srgb,var(--primary) 45%,var(--card-border));background:var(--btn-regular-bg);color:var(--theme-accent-text)}.project-intelligence-navigation{display:grid;gap:.45rem;margin-top:.85rem}.project-intelligence-form{border-top:1px solid var(--card-border);background:var(--card-bg);padding-bottom:max(1rem,env(safe-area-inset-bottom))}.project-intelligence-form label{display:block;margin-bottom:.45rem;font-size:.8rem;font-weight:800}.project-intelligence-input-row input{min-width:0;min-height:2.75rem;flex:1;border:1px solid var(--card-border);border-radius:.75rem;background:var(--page-bg);padding:0 .75rem;color:var(--text-primary);font:inherit;font-size:.86rem}.project-intelligence-input-row input::-moz-placeholder{color:var(--text-secondary)}.project-intelligence-input-row input::placeholder{color:var(--text-secondary)}.project-intelligence-input-row button{border-color:color-mix(in srgb,var(--primary) 45%,var(--card-border))}.project-intelligence-form>p{margin-top:.45rem}.project-intelligence-form>.project-intelligence-local-note{margin-top:.25rem;font-size:.68rem;line-height:1.4}.project-intelligence-form[aria-busy=true]{cursor:progress}.project-intelligence-form[aria-busy=true] button{opacity:.6}.project-intelligence-trigger:focus-visible,.project-intelligence-dialog button:focus-visible,.project-intelligence-dialog a:focus-visible,.project-intelligence-dialog input:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:2px}.project-intelligence-open{overflow:hidden}@media (max-width: 767px){.project-intelligence-trigger{right:max(.75rem,env(safe-area-inset-right));bottom:max(.75rem,env(safe-area-inset-bottom));min-height:2.8rem;padding:.6rem .78rem;font-size:.8rem}.project-intelligence-dialog{top:auto;right:0;bottom:0;width:100%;height:auto;max-height:min(92dvh,48rem);border:1px solid var(--card-border);border-right:0;border-bottom:0;border-left:0;border-radius:var(--radius-large) var(--radius-large) 0 0;box-shadow:0 -12px 32px #0f172a33;transform:translate3d(0,100%,0)}.project-intelligence-layer[data-open=true] .project-intelligence-dialog{transform:translateZ(0)}.project-intelligence-header,.project-intelligence-form,.project-intelligence-body{padding-right:max(.9rem,env(safe-area-inset-right));padding-left:max(.9rem,env(safe-area-inset-left))}.project-intelligence-body{min-height:10rem}}@media (max-width: 390px){.project-intelligence-heading p{display:none}.project-intelligence-trigger span{max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (prefers-reduced-motion: reduce){.project-intelligence-backdrop,.project-intelligence-dialog,.project-intelligence-trigger,.project-intelligence-suggestion-list button,.project-intelligence-actions a,.project-intelligence-actions button{transition:none}}.project-intelligence-trigger{border-color:var(--border-strong);background:var(--card-bg);box-shadow:0 12px 32px -18px color-mix(in srgb,var(--text-primary) 55%,transparent);font-size:.82rem;font-weight:700}.project-intelligence-dialog{width:min(30rem,100vw);border-left-color:var(--border-strong);box-shadow:-18px 0 54px -24px color-mix(in srgb,var(--text-primary) 48%,transparent)}.project-intelligence-header{padding:1.15rem;border-bottom-color:var(--border-subtle)}.project-intelligence-heading h2{font-family:var(--font-display);font-size:1.4rem;letter-spacing:-.035em}.project-intelligence-suggestion-list button,.project-intelligence-message,.project-intelligence-ai-status-row{border-color:var(--border-subtle);border-radius:var(--radius-md)}.project-intelligence-input-row input{border-color:var(--border-strong);background:var(--surface-2)}.project-intelligence-input-row input:focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent)}.portfolio-evidence-grid[data-astro-cid-v72zqszo]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0 1.25rem}.portfolio-evidence-grid[data-astro-cid-v72zqszo]>[data-astro-cid-v72zqszo]:only-child{grid-column:1 / -1}.portfolio-evidence-grid-sidebar[data-astro-cid-v72zqszo]{grid-template-columns:minmax(0,1fr);margin:0}.portfolio-evidence-grid-sidebar[data-astro-cid-v72zqszo] .impact-evidence-card[data-astro-cid-v72zqszo]{grid-template-columns:minmax(0,1fr)}.portfolio-evidence-card[data-astro-cid-v72zqszo]{min-width:0;padding:1.1rem;border:1px solid var(--card-border);border-radius:var(--radius-card);background:var(--card-bg);box-shadow:var(--card-shadow);color:var(--text-secondary)}.portfolio-evidence-card[data-astro-cid-v72zqszo] h2[data-astro-cid-v72zqszo],.portfolio-evidence-card[data-astro-cid-v72zqszo] h3[data-astro-cid-v72zqszo],.portfolio-evidence-card[data-astro-cid-v72zqszo] p[data-astro-cid-v72zqszo]{margin-top:0}.portfolio-evidence-card[data-astro-cid-v72zqszo] h2[data-astro-cid-v72zqszo]{margin-bottom:.55rem;color:var(--text-primary);font-size:clamp(1.35rem,2.4vw,1.7rem);line-height:1.08;letter-spacing:-.02em}.portfolio-evidence-card[data-astro-cid-v72zqszo] h3[data-astro-cid-v72zqszo]{margin-bottom:.45rem;color:var(--text-primary);font-size:.82rem}.portfolio-evidence-eyebrow[data-astro-cid-v72zqszo]{margin-bottom:.3rem;color:var(--primary);font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.impact-evidence-card[data-astro-cid-v72zqszo]{display:grid;grid-template-columns:minmax(0,1fr) minmax(13rem,.72fr);align-items:center;gap:1rem}.portfolio-evidence-copy[data-astro-cid-v72zqszo]>p[data-astro-cid-v72zqszo]:not(.portfolio-evidence-eyebrow){margin-bottom:.75rem;font-size:.82rem;line-height:1.6}.portfolio-evidence-copy[data-astro-cid-v72zqszo]>a[data-astro-cid-v72zqszo],.credential-links[data-astro-cid-v72zqszo] a[data-astro-cid-v72zqszo],.publication-doi-link[data-astro-cid-v72zqszo],.patent-records[data-astro-cid-v72zqszo] a[data-astro-cid-v72zqszo]{color:var(--primary);font-weight:600;text-underline-offset:.18em}.portfolio-evidence-copy[data-astro-cid-v72zqszo]>a[data-astro-cid-v72zqszo],.credential-links[data-astro-cid-v72zqszo] a[data-astro-cid-v72zqszo],.publication-doi-link[data-astro-cid-v72zqszo]{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;text-decoration:none}.portfolio-evidence-copy[data-astro-cid-v72zqszo]>a[data-astro-cid-v72zqszo]:focus-visible,.credential-links[data-astro-cid-v72zqszo] a[data-astro-cid-v72zqszo]:focus-visible,.publication-doi-link[data-astro-cid-v72zqszo]:focus-visible,.patent-records[data-astro-cid-v72zqszo] a[data-astro-cid-v72zqszo]:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 52%,transparent);outline-offset:3px}.impact-mini-preview[data-astro-cid-v72zqszo]{display:grid;position:relative;min-height:9rem;place-items:center;border:1px solid var(--line-divider);border-radius:.85rem;background:color-mix(in srgb,var(--primary) 4%,transparent);overflow:hidden}.impact-mini-preview[data-astro-cid-v72zqszo]:before,.impact-mini-preview[data-astro-cid-v72zqszo]:after{position:absolute;width:72%;height:1px;background:color-mix(in srgb,var(--primary) 30%,var(--line-divider));content:""}.impact-mini-preview[data-astro-cid-v72zqszo]:before{transform:rotate(24deg)}.impact-mini-preview[data-astro-cid-v72zqszo]:after{transform:rotate(-24deg)}.impact-mini-core[data-astro-cid-v72zqszo],.impact-mini-node[data-astro-cid-v72zqszo]{display:flex;position:absolute;z-index:1;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--primary) 42%,var(--line-divider));background:var(--card-bg);color:var(--text-primary)}.impact-mini-core[data-astro-cid-v72zqszo]{width:2.8rem;height:2.8rem;border-radius:50%;color:var(--primary);font-family:var(--font-body);font-weight:600;font-variant-numeric:tabular-nums}.impact-mini-node[data-astro-cid-v72zqszo]{gap:.28rem;max-width:7.6rem;padding:.28rem .45rem;border-radius:999px;font-size:.58rem;line-height:1.2;text-align:center}.impact-mini-node[data-astro-cid-v72zqszo] small[data-astro-cid-v72zqszo]{color:var(--primary);font-weight:600}.impact-mini-node-1[data-astro-cid-v72zqszo]{top:.65rem;left:.65rem}.impact-mini-node-2[data-astro-cid-v72zqszo]{top:.75rem;right:.55rem}.impact-mini-node-3[data-astro-cid-v72zqszo]{bottom:.65rem;left:.55rem}.impact-mini-node-4[data-astro-cid-v72zqszo]{right:.55rem;bottom:.75rem}.impact-mini-node-5[data-astro-cid-v72zqszo]{top:50%;right:.35rem;transform:translateY(-50%)}.portfolio-evidence-grid-sidebar[data-astro-cid-v72zqszo] .impact-mini-preview[data-astro-cid-v72zqszo]{min-height:9.5rem}.portfolio-evidence-grid-sidebar[data-astro-cid-v72zqszo] .impact-mini-node[data-astro-cid-v72zqszo]{max-width:6.65rem;padding-inline:.38rem;overflow-wrap:anywhere}.portfolio-evidence-grid-sidebar[data-astro-cid-v72zqszo] .credential-card-heading[data-astro-cid-v72zqszo]{display:block}.portfolio-evidence-grid-sidebar[data-astro-cid-v72zqszo] .publication-count[data-astro-cid-v72zqszo]{margin-top:-.2rem;text-align:left}.portfolio-evidence-grid-sidebar[data-astro-cid-v72zqszo] .publication-footer[data-astro-cid-v72zqszo]{flex-wrap:wrap;align-items:flex-end}.credentials-evidence-card[data-astro-cid-v72zqszo]{display:flex;flex-direction:column;min-width:0}.credential-card-heading[data-astro-cid-v72zqszo]{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem;margin-bottom:.75rem}.publication-count[data-astro-cid-v72zqszo]{flex:0 0 auto;margin:.15rem 0 0;color:var(--text-muted);font-family:var(--font-body);font-size:.62rem;line-height:1.35;text-align:right}.publication-list[data-astro-cid-v72zqszo],.patent-records[data-astro-cid-v72zqszo] ul[data-astro-cid-v72zqszo]{margin:0;padding:0;list-style:none}.publication-record[data-astro-cid-v72zqszo]{min-width:0;padding-top:.8rem;border-top:1px solid var(--line-divider)}.publication-record-meta[data-astro-cid-v72zqszo]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem;font-family:var(--font-body);font-size:.64rem;font-variant-numeric:tabular-nums}.publication-number[data-astro-cid-v72zqszo]{color:var(--primary);font-weight:600;letter-spacing:.08em}.publication-record-meta[data-astro-cid-v72zqszo] time[data-astro-cid-v72zqszo]{color:var(--text-muted)}.publication-record[data-astro-cid-v72zqszo] h3[data-astro-cid-v72zqszo]{margin:0 0 .55rem;color:var(--text-primary);font-size:clamp(1.15rem,2vw,1.42rem);line-height:1.18;letter-spacing:-.018em;text-wrap:pretty;overflow-wrap:anywhere}.publication-authors[data-astro-cid-v72zqszo],.publication-citation[data-astro-cid-v72zqszo]{margin-bottom:.55rem;font-size:.75rem;line-height:1.55;overflow-wrap:anywhere}.publication-authors[data-astro-cid-v72zqszo]{color:var(--text-secondary)}.publication-authors[data-astro-cid-v72zqszo] strong[data-astro-cid-v72zqszo]{color:var(--text-primary);font-weight:600}.publication-citation[data-astro-cid-v72zqszo]{color:var(--text-muted)}.publication-footer[data-astro-cid-v72zqszo]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.75rem}.publication-indicators[data-astro-cid-v72zqszo]{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none}.publication-indicators[data-astro-cid-v72zqszo] li[data-astro-cid-v72zqszo]{padding:.18rem .42rem;border:1px solid var(--line-divider);border-radius:.35rem;background:color-mix(in srgb,var(--primary) 4%,transparent);color:var(--text-secondary);font-family:var(--font-body);font-size:.6rem;font-weight:600;font-variant-numeric:tabular-nums}.publication-doi-link[data-astro-cid-v72zqszo]{flex:0 0 auto;white-space:nowrap}.patent-records[data-astro-cid-v72zqszo]{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--line-divider)}.patent-records[data-astro-cid-v72zqszo] ul[data-astro-cid-v72zqszo]{display:grid;gap:.55rem}.patent-records[data-astro-cid-v72zqszo] li[data-astro-cid-v72zqszo],.patent-records[data-astro-cid-v72zqszo] li[data-astro-cid-v72zqszo]>span[data-astro-cid-v72zqszo]{display:grid;gap:.12rem}.patent-records[data-astro-cid-v72zqszo] li[data-astro-cid-v72zqszo]>span[data-astro-cid-v72zqszo]{color:var(--text-muted);font-size:.68rem}.credential-links[data-astro-cid-v72zqszo]{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.85rem}@media (max-width: 900px){.portfolio-evidence-grid[data-astro-cid-v72zqszo],.impact-evidence-card[data-astro-cid-v72zqszo]{grid-template-columns:minmax(0,1fr)}.impact-mini-preview[data-astro-cid-v72zqszo]{min-height:8rem}}@media (max-width: 640px){.portfolio-evidence-grid[data-astro-cid-v72zqszo]{margin-top:.75rem}.portfolio-evidence-card[data-astro-cid-v72zqszo]{padding:.95rem}.impact-mini-node[data-astro-cid-v72zqszo]{max-width:6.5rem}.credential-card-heading[data-astro-cid-v72zqszo]{display:block}.publication-count[data-astro-cid-v72zqszo]{margin-top:-.2rem;text-align:left}.publication-footer[data-astro-cid-v72zqszo]{align-items:flex-end}}@media (prefers-reduced-motion: reduce){.portfolio-evidence-card[data-astro-cid-v72zqszo] [data-astro-cid-v72zqszo]{scroll-behavior:auto}}.collapsed[data-astro-cid-ucso7hve]{height:var(--collapsedHeight)}.tag-cloud[data-astro-cid-f5z42e7o]>span[data-astro-cid-f5z42e7o]{min-width:0;max-width:100%}.tag-cloud[data-astro-cid-f5z42e7o] a,.tag-cloud[data-astro-cid-f5z42e7o] a:visited{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:left;color:color-mix(in srgb,var(--primary) 78%,var(--text-primary))}.tag-toggle[data-astro-cid-f5z42e7o]:focus-visible{outline:3px solid var(--primary);outline-offset:2px}table-of-contents[data-astro-cid-7ckeuxew]{display:block;position:relative;padding-inline:.4rem}.toc-heading[data-astro-cid-7ckeuxew]{margin:0 0 .65rem;padding:0 .65rem .65rem;border-bottom:1px solid var(--border-subtle);color:var(--text-muted);font-family:var(--font-body);font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}table-of-contents[data-astro-cid-7ckeuxew] a{border-left:2px solid transparent;border-radius:0 var(--radius-md) var(--radius-md) 0}table-of-contents[data-astro-cid-7ckeuxew] a.visible{border-left-color:var(--primary);color:var(--text-primary)}.toc-active-indicator[data-astro-cid-7ckeuxew]{right:0;left:0;border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--toc-btn-hover);box-shadow:inset 2px 0 0 var(--primary)}@font-face{font-family:KaTeX_AMS;src:url(/projects/_astro/KaTeX_AMS-Regular.BQhdFMY1.woff2) format("woff2"),url(/projects/_astro/KaTeX_AMS-Regular.DMm9YOAa.woff) format("woff"),url(/projects/_astro/KaTeX_AMS-Regular.DRggAlZN.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Caligraphic;src:url(/projects/_astro/KaTeX_Caligraphic-Bold.Dq_IR9rO.woff2) format("woff2"),url(/projects/_astro/KaTeX_Caligraphic-Bold.BEiXGLvX.woff) format("woff"),url(/projects/_astro/KaTeX_Caligraphic-Bold.ATXxdsX0.ttf) format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Caligraphic;src:url(/projects/_astro/KaTeX_Caligraphic-Regular.Di6jR-x-.woff2) format("woff2"),url(/projects/_astro/KaTeX_Caligraphic-Regular.CTRA-rTL.woff) format("woff"),url(/projects/_astro/KaTeX_Caligraphic-Regular.wX97UBjC.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Fraktur;src:url(/projects/_astro/KaTeX_Fraktur-Bold.CL6g_b3V.woff2) format("woff2"),url(/projects/_astro/KaTeX_Fraktur-Bold.BsDP51OF.woff) format("woff"),url(/projects/_astro/KaTeX_Fraktur-Bold.BdnERNNW.ttf) format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Fraktur;src:url(/projects/_astro/KaTeX_Fraktur-Regular.CTYiF6lA.woff2) format("woff2"),url(/projects/_astro/KaTeX_Fraktur-Regular.Dxdc4cR9.woff) format("woff"),url(/projects/_astro/KaTeX_Fraktur-Regular.CB_wures.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Main;src:url(/projects/_astro/KaTeX_Main-Bold.Cx986IdX.woff2) format("woff2"),url(/projects/_astro/KaTeX_Main-Bold.Jm3AIy58.woff) format("woff"),url(/projects/_astro/KaTeX_Main-Bold.waoOVXN0.ttf) format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Main;src:url(/projects/_astro/KaTeX_Main-BoldItalic.DxDJ3AOS.woff2) format("woff2"),url(/projects/_astro/KaTeX_Main-BoldItalic.SpSLRI95.woff) format("woff"),url(/projects/_astro/KaTeX_Main-BoldItalic.DzxPMmG6.ttf) format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:KaTeX_Main;src:url(/projects/_astro/KaTeX_Main-Italic.NWA7e6Wa.woff2) format("woff2"),url(/projects/_astro/KaTeX_Main-Italic.BMLOBm91.woff) format("woff"),url(/projects/_astro/KaTeX_Main-Italic.3WenGoN9.ttf) format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:KaTeX_Main;src:url(/projects/_astro/KaTeX_Main-Regular.B22Nviop.woff2) format("woff2"),url(/projects/_astro/KaTeX_Main-Regular.Dr94JaBh.woff) format("woff"),url(/projects/_astro/KaTeX_Main-Regular.ypZvNtVU.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Math;src:url(/projects/_astro/KaTeX_Math-BoldItalic.CZnvNsCZ.woff2) format("woff2"),url(/projects/_astro/KaTeX_Math-BoldItalic.iY-2wyZ7.woff) format("woff"),url(/projects/_astro/KaTeX_Math-BoldItalic.B3XSjfu4.ttf) format("truetype");font-weight:700;font-style:italic;font-display:block}@font-face{font-family:KaTeX_Math;src:url(/projects/_astro/KaTeX_Math-Italic.t53AETM-.woff2) format("woff2"),url(/projects/_astro/KaTeX_Math-Italic.DA0__PXp.woff) format("woff"),url(/projects/_astro/KaTeX_Math-Italic.flOr_0UB.ttf) format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:KaTeX_SansSerif;src:url(/projects/_astro/KaTeX_SansSerif-Bold.D1sUS0GD.woff2) format("woff2"),url(/projects/_astro/KaTeX_SansSerif-Bold.DbIhKOiC.woff) format("woff"),url(/projects/_astro/KaTeX_SansSerif-Bold.CFMepnvq.ttf) format("truetype");font-weight:700;font-style:normal;font-display:block}@font-face{font-family:KaTeX_SansSerif;src:url(/projects/_astro/KaTeX_SansSerif-Italic.C3H0VqGB.woff2) format("woff2"),url(/projects/_astro/KaTeX_SansSerif-Italic.DN2j7dab.woff) format("woff"),url(/projects/_astro/KaTeX_SansSerif-Italic.YYjJ1zSn.ttf) format("truetype");font-weight:400;font-style:italic;font-display:block}@font-face{font-family:KaTeX_SansSerif;src:url(/projects/_astro/KaTeX_SansSerif-Regular.DDBCnlJ7.woff2) format("woff2"),url(/projects/_astro/KaTeX_SansSerif-Regular.CS6fqUqJ.woff) format("woff"),url(/projects/_astro/KaTeX_SansSerif-Regular.BNo7hRIc.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Script;src:url(/projects/_astro/KaTeX_Script-Regular.D3wIWfF6.woff2) format("woff2"),url(/projects/_astro/KaTeX_Script-Regular.D5yQViql.woff) format("woff"),url(/projects/_astro/KaTeX_Script-Regular.C5JkGWo-.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Size1;src:url(/projects/_astro/KaTeX_Size1-Regular.mCD8mA8B.woff2) format("woff2"),url(/projects/_astro/KaTeX_Size1-Regular.C195tn64.woff) format("woff"),url(/projects/_astro/KaTeX_Size1-Regular.Dbsnue_I.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Size2;src:url(/projects/_astro/KaTeX_Size2-Regular.Dy4dx90m.woff2) format("woff2"),url(/projects/_astro/KaTeX_Size2-Regular.oD1tc_U0.woff) format("woff"),url(/projects/_astro/KaTeX_Size2-Regular.B7gKUWhC.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Size3;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/projects/_astro/KaTeX_Size3-Regular.CTq5MqoE.woff) format("woff"),url(/projects/_astro/KaTeX_Size3-Regular.DgpXs0kz.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Size4;src:url(/projects/_astro/KaTeX_Size4-Regular.Dl5lxZxV.woff2) format("woff2"),url(/projects/_astro/KaTeX_Size4-Regular.BF-4gkZK.woff) format("woff"),url(/projects/_astro/KaTeX_Size4-Regular.DWFBv043.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}@font-face{font-family:KaTeX_Typewriter;src:url(/projects/_astro/KaTeX_Typewriter-Regular.CO6r4hn1.woff2) format("woff2"),url(/projects/_astro/KaTeX_Typewriter-Regular.C0xS9mPB.woff) format("woff"),url(/projects/_astro/KaTeX_Typewriter-Regular.D3Ib7_Hf.ttf) format("truetype");font-weight:400;font-style:normal;font-display:block}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.27"}.katex .katex-mathml{position:absolute;clip:rect(1px,1px,1px,1px);padding:0;border:0;height:1px;width:1px;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{position:relative;display:inline-block;white-space:nowrap;width:-moz-min-content;width:min-content}.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-weight:700;font-style:italic}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathsfit,.katex .mathitsf,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{display:inline-table;table-layout:fixed;border-collapse:collapse}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;vertical-align:bottom;position:relative}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;vertical-align:bottom;font-size:1px;width:2px;min-width:2px}.katex .vbox{display:inline-flex;flex-direction:column;align-items:baseline}.katex .hbox{display:inline-flex;flex-direction:row;width:100%}.katex .thinbox{display:inline-flex;flex-direction:row;width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{display:inline-block;width:100%;border-bottom-style:solid}.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .underline .underline-line,.katex .hline,.katex .hdashline,.katex .rule{min-height:1px}.katex .mspace{display:inline-block}.katex .llap,.katex .rlap,.katex .clap{width:0;position:relative}.katex .llap>.inner,.katex .rlap>.inner,.katex .clap>.inner{position:absolute}.katex .llap>.fix,.katex .rlap>.fix,.katex .clap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .rlap>.inner,.katex .clap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{display:inline-block;border:solid 0;position:relative}.katex .overline .overline-line,.katex .underline .underline-line,.katex .hline{display:inline-block;width:100%;border-bottom-style:solid}.katex .hdashline{display:inline-block;width:100%;border-bottom-style:dashed}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .sizing.reset-size1.size1,.katex .fontsize-ensurer.reset-size1.size1{font-size:1em}.katex .sizing.reset-size1.size2,.katex .fontsize-ensurer.reset-size1.size2{font-size:1.2em}.katex .sizing.reset-size1.size3,.katex .fontsize-ensurer.reset-size1.size3{font-size:1.4em}.katex .sizing.reset-size1.size4,.katex .fontsize-ensurer.reset-size1.size4{font-size:1.6em}.katex .sizing.reset-size1.size5,.katex .fontsize-ensurer.reset-size1.size5{font-size:1.8em}.katex .sizing.reset-size1.size6,.katex .fontsize-ensurer.reset-size1.size6{font-size:2em}.katex .sizing.reset-size1.size7,.katex .fontsize-ensurer.reset-size1.size7{font-size:2.4em}.katex .sizing.reset-size1.size8,.katex .fontsize-ensurer.reset-size1.size8{font-size:2.88em}.katex .sizing.reset-size1.size9,.katex .fontsize-ensurer.reset-size1.size9{font-size:3.456em}.katex .sizing.reset-size1.size10,.katex .fontsize-ensurer.reset-size1.size10{font-size:4.148em}.katex .sizing.reset-size1.size11,.katex .fontsize-ensurer.reset-size1.size11{font-size:4.976em}.katex .sizing.reset-size2.size1,.katex .fontsize-ensurer.reset-size2.size1{font-size:.8333333333em}.katex .sizing.reset-size2.size2,.katex .fontsize-ensurer.reset-size2.size2{font-size:1em}.katex .sizing.reset-size2.size3,.katex .fontsize-ensurer.reset-size2.size3{font-size:1.1666666667em}.katex .sizing.reset-size2.size4,.katex .fontsize-ensurer.reset-size2.size4{font-size:1.3333333333em}.katex .sizing.reset-size2.size5,.katex .fontsize-ensurer.reset-size2.size5{font-size:1.5em}.katex .sizing.reset-size2.size6,.katex .fontsize-ensurer.reset-size2.size6{font-size:1.6666666667em}.katex .sizing.reset-size2.size7,.katex .fontsize-ensurer.reset-size2.size7{font-size:2em}.katex .sizing.reset-size2.size8,.katex .fontsize-ensurer.reset-size2.size8{font-size:2.4em}.katex .sizing.reset-size2.size9,.katex .fontsize-ensurer.reset-size2.size9{font-size:2.88em}.katex .sizing.reset-size2.size10,.katex .fontsize-ensurer.reset-size2.size10{font-size:3.4566666667em}.katex .sizing.reset-size2.size11,.katex .fontsize-ensurer.reset-size2.size11{font-size:4.1466666667em}.katex .sizing.reset-size3.size1,.katex .fontsize-ensurer.reset-size3.size1{font-size:.7142857143em}.katex .sizing.reset-size3.size2,.katex .fontsize-ensurer.reset-size3.size2{font-size:.8571428571em}.katex .sizing.reset-size3.size3,.katex .fontsize-ensurer.reset-size3.size3{font-size:1em}.katex .sizing.reset-size3.size4,.katex .fontsize-ensurer.reset-size3.size4{font-size:1.1428571429em}.katex .sizing.reset-size3.size5,.katex .fontsize-ensurer.reset-size3.size5{font-size:1.2857142857em}.katex .sizing.reset-size3.size6,.katex .fontsize-ensurer.reset-size3.size6{font-size:1.4285714286em}.katex .sizing.reset-size3.size7,.katex .fontsize-ensurer.reset-size3.size7{font-size:1.7142857143em}.katex .sizing.reset-size3.size8,.katex .fontsize-ensurer.reset-size3.size8{font-size:2.0571428571em}.katex .sizing.reset-size3.size9,.katex .fontsize-ensurer.reset-size3.size9{font-size:2.4685714286em}.katex .sizing.reset-size3.size10,.katex .fontsize-ensurer.reset-size3.size10{font-size:2.9628571429em}.katex .sizing.reset-size3.size11,.katex .fontsize-ensurer.reset-size3.size11{font-size:3.5542857143em}.katex .sizing.reset-size4.size1,.katex .fontsize-ensurer.reset-size4.size1{font-size:.625em}.katex .sizing.reset-size4.size2,.katex .fontsize-ensurer.reset-size4.size2{font-size:.75em}.katex .sizing.reset-size4.size3,.katex .fontsize-ensurer.reset-size4.size3{font-size:.875em}.katex .sizing.reset-size4.size4,.katex .fontsize-ensurer.reset-size4.size4{font-size:1em}.katex .sizing.reset-size4.size5,.katex .fontsize-ensurer.reset-size4.size5{font-size:1.125em}.katex .sizing.reset-size4.size6,.katex .fontsize-ensurer.reset-size4.size6{font-size:1.25em}.katex .sizing.reset-size4.size7,.katex .fontsize-ensurer.reset-size4.size7{font-size:1.5em}.katex .sizing.reset-size4.size8,.katex .fontsize-ensurer.reset-size4.size8{font-size:1.8em}.katex .sizing.reset-size4.size9,.katex .fontsize-ensurer.reset-size4.size9{font-size:2.16em}.katex .sizing.reset-size4.size10,.katex .fontsize-ensurer.reset-size4.size10{font-size:2.5925em}.katex .sizing.reset-size4.size11,.katex .fontsize-ensurer.reset-size4.size11{font-size:3.11em}.katex .sizing.reset-size5.size1,.katex .fontsize-ensurer.reset-size5.size1{font-size:.5555555556em}.katex .sizing.reset-size5.size2,.katex .fontsize-ensurer.reset-size5.size2{font-size:.6666666667em}.katex .sizing.reset-size5.size3,.katex .fontsize-ensurer.reset-size5.size3{font-size:.7777777778em}.katex .sizing.reset-size5.size4,.katex .fontsize-ensurer.reset-size5.size4{font-size:.8888888889em}.katex .sizing.reset-size5.size5,.katex .fontsize-ensurer.reset-size5.size5{font-size:1em}.katex .sizing.reset-size5.size6,.katex .fontsize-ensurer.reset-size5.size6{font-size:1.1111111111em}.katex .sizing.reset-size5.size7,.katex .fontsize-ensurer.reset-size5.size7{font-size:1.3333333333em}.katex .sizing.reset-size5.size8,.katex .fontsize-ensurer.reset-size5.size8{font-size:1.6em}.katex .sizing.reset-size5.size9,.katex .fontsize-ensurer.reset-size5.size9{font-size:1.92em}.katex .sizing.reset-size5.size10,.katex .fontsize-ensurer.reset-size5.size10{font-size:2.3044444444em}.katex .sizing.reset-size5.size11,.katex .fontsize-ensurer.reset-size5.size11{font-size:2.7644444444em}.katex .sizing.reset-size6.size1,.katex .fontsize-ensurer.reset-size6.size1{font-size:.5em}.katex .sizing.reset-size6.size2,.katex .fontsize-ensurer.reset-size6.size2{font-size:.6em}.katex .sizing.reset-size6.size3,.katex .fontsize-ensurer.reset-size6.size3{font-size:.7em}.katex .sizing.reset-size6.size4,.katex .fontsize-ensurer.reset-size6.size4{font-size:.8em}.katex .sizing.reset-size6.size5,.katex .fontsize-ensurer.reset-size6.size5{font-size:.9em}.katex .sizing.reset-size6.size6,.katex .fontsize-ensurer.reset-size6.size6{font-size:1em}.katex .sizing.reset-size6.size7,.katex .fontsize-ensurer.reset-size6.size7{font-size:1.2em}.katex .sizing.reset-size6.size8,.katex .fontsize-ensurer.reset-size6.size8{font-size:1.44em}.katex .sizing.reset-size6.size9,.katex .fontsize-ensurer.reset-size6.size9{font-size:1.728em}.katex .sizing.reset-size6.size10,.katex .fontsize-ensurer.reset-size6.size10{font-size:2.074em}.katex .sizing.reset-size6.size11,.katex .fontsize-ensurer.reset-size6.size11{font-size:2.488em}.katex .sizing.reset-size7.size1,.katex .fontsize-ensurer.reset-size7.size1{font-size:.4166666667em}.katex .sizing.reset-size7.size2,.katex .fontsize-ensurer.reset-size7.size2{font-size:.5em}.katex .sizing.reset-size7.size3,.katex .fontsize-ensurer.reset-size7.size3{font-size:.5833333333em}.katex .sizing.reset-size7.size4,.katex .fontsize-ensurer.reset-size7.size4{font-size:.6666666667em}.katex .sizing.reset-size7.size5,.katex .fontsize-ensurer.reset-size7.size5{font-size:.75em}.katex .sizing.reset-size7.size6,.katex .fontsize-ensurer.reset-size7.size6{font-size:.8333333333em}.katex .sizing.reset-size7.size7,.katex .fontsize-ensurer.reset-size7.size7{font-size:1em}.katex .sizing.reset-size7.size8,.katex .fontsize-ensurer.reset-size7.size8{font-size:1.2em}.katex .sizing.reset-size7.size9,.katex .fontsize-ensurer.reset-size7.size9{font-size:1.44em}.katex .sizing.reset-size7.size10,.katex .fontsize-ensurer.reset-size7.size10{font-size:1.7283333333em}.katex .sizing.reset-size7.size11,.katex .fontsize-ensurer.reset-size7.size11{font-size:2.0733333333em}.katex .sizing.reset-size8.size1,.katex .fontsize-ensurer.reset-size8.size1{font-size:.3472222222em}.katex .sizing.reset-size8.size2,.katex .fontsize-ensurer.reset-size8.size2{font-size:.4166666667em}.katex .sizing.reset-size8.size3,.katex .fontsize-ensurer.reset-size8.size3{font-size:.4861111111em}.katex .sizing.reset-size8.size4,.katex .fontsize-ensurer.reset-size8.size4{font-size:.5555555556em}.katex .sizing.reset-size8.size5,.katex .fontsize-ensurer.reset-size8.size5{font-size:.625em}.katex .sizing.reset-size8.size6,.katex .fontsize-ensurer.reset-size8.size6{font-size:.6944444444em}.katex .sizing.reset-size8.size7,.katex .fontsize-ensurer.reset-size8.size7{font-size:.8333333333em}.katex .sizing.reset-size8.size8,.katex .fontsize-ensurer.reset-size8.size8{font-size:1em}.katex .sizing.reset-size8.size9,.katex .fontsize-ensurer.reset-size8.size9{font-size:1.2em}.katex .sizing.reset-size8.size10,.katex .fontsize-ensurer.reset-size8.size10{font-size:1.4402777778em}.katex .sizing.reset-size8.size11,.katex .fontsize-ensurer.reset-size8.size11{font-size:1.7277777778em}.katex .sizing.reset-size9.size1,.katex .fontsize-ensurer.reset-size9.size1{font-size:.2893518519em}.katex .sizing.reset-size9.size2,.katex .fontsize-ensurer.reset-size9.size2{font-size:.3472222222em}.katex .sizing.reset-size9.size3,.katex .fontsize-ensurer.reset-size9.size3{font-size:.4050925926em}.katex .sizing.reset-size9.size4,.katex .fontsize-ensurer.reset-size9.size4{font-size:.462962963em}.katex .sizing.reset-size9.size5,.katex .fontsize-ensurer.reset-size9.size5{font-size:.5208333333em}.katex .sizing.reset-size9.size6,.katex .fontsize-ensurer.reset-size9.size6{font-size:.5787037037em}.katex .sizing.reset-size9.size7,.katex .fontsize-ensurer.reset-size9.size7{font-size:.6944444444em}.katex .sizing.reset-size9.size8,.katex .fontsize-ensurer.reset-size9.size8{font-size:.8333333333em}.katex .sizing.reset-size9.size9,.katex .fontsize-ensurer.reset-size9.size9{font-size:1em}.katex .sizing.reset-size9.size10,.katex .fontsize-ensurer.reset-size9.size10{font-size:1.2002314815em}.katex .sizing.reset-size9.size11,.katex .fontsize-ensurer.reset-size9.size11{font-size:1.4398148148em}.katex .sizing.reset-size10.size1,.katex .fontsize-ensurer.reset-size10.size1{font-size:.2410800386em}.katex .sizing.reset-size10.size2,.katex .fontsize-ensurer.reset-size10.size2{font-size:.2892960463em}.katex .sizing.reset-size10.size3,.katex .fontsize-ensurer.reset-size10.size3{font-size:.337512054em}.katex .sizing.reset-size10.size4,.katex .fontsize-ensurer.reset-size10.size4{font-size:.3857280617em}.katex .sizing.reset-size10.size5,.katex .fontsize-ensurer.reset-size10.size5{font-size:.4339440694em}.katex .sizing.reset-size10.size6,.katex .fontsize-ensurer.reset-size10.size6{font-size:.4821600771em}.katex .sizing.reset-size10.size7,.katex .fontsize-ensurer.reset-size10.size7{font-size:.5785920926em}.katex .sizing.reset-size10.size8,.katex .fontsize-ensurer.reset-size10.size8{font-size:.6943105111em}.katex .sizing.reset-size10.size9,.katex .fontsize-ensurer.reset-size10.size9{font-size:.8331726133em}.katex .sizing.reset-size10.size10,.katex .fontsize-ensurer.reset-size10.size10{font-size:1em}.katex .sizing.reset-size10.size11,.katex .fontsize-ensurer.reset-size10.size11{font-size:1.1996142719em}.katex .sizing.reset-size11.size1,.katex .fontsize-ensurer.reset-size11.size1{font-size:.2009646302em}.katex .sizing.reset-size11.size2,.katex .fontsize-ensurer.reset-size11.size2{font-size:.2411575563em}.katex .sizing.reset-size11.size3,.katex .fontsize-ensurer.reset-size11.size3{font-size:.2813504823em}.katex .sizing.reset-size11.size4,.katex .fontsize-ensurer.reset-size11.size4{font-size:.3215434084em}.katex .sizing.reset-size11.size5,.katex .fontsize-ensurer.reset-size11.size5{font-size:.3617363344em}.katex .sizing.reset-size11.size6,.katex .fontsize-ensurer.reset-size11.size6{font-size:.4019292605em}.katex .sizing.reset-size11.size7,.katex .fontsize-ensurer.reset-size11.size7{font-size:.4823151125em}.katex .sizing.reset-size11.size8,.katex .fontsize-ensurer.reset-size11.size8{font-size:.578778135em}.katex .sizing.reset-size11.size9,.katex .fontsize-ensurer.reset-size11.size9{font-size:.6945337621em}.katex .sizing.reset-size11.size10,.katex .fontsize-ensurer.reset-size11.size10{font-size:.8336012862em}.katex .sizing.reset-size11.size11,.katex .fontsize-ensurer.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .op-limits>.vlist-t{text-align:center}.katex .accent>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{display:block;position:absolute;width:100%;height:inherit;fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex svg path{stroke:none}.katex img{border-style:none;min-width:0;min-height:0;max-width:none;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:before,.katex .stretchy:after{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{position:absolute;left:0;width:50.2%;overflow:hidden}.katex .halfarrow-right{position:absolute;right:0;width:50.2%;overflow:hidden}.katex .brace-left{position:absolute;left:0;width:25.1%;overflow:hidden}.katex .brace-center{position:absolute;left:25%;width:50%;overflow:hidden}.katex .brace-right{position:absolute;right:0;width:25.1%;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .x-arrow,.katex .mover,.katex .munder{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{counter-increment:katexEqnNo;content:"(" counter(katexEqnNo) ")"}.katex .mml-eqn-num:before{counter-increment:mmlEqnNo;content:"(" counter(mmlEqnNo) ")"}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;position:absolute;left:calc(50% + .3em);text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/projects/_astro/cormorant-garamond-latin-600-normal.Co1r35X9.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/projects/_astro/cormorant-garamond-latin-700-normal.DajfzrDU.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/projects/_astro/raleway-latin-wght-normal.CSF1BaNN.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Raleway Variable", "Raleway", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-ui: var(--font-body);--font-sans: var(--font-body);--font-heading: var(--font-display);--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace}html{font-family:var(--font-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-weight:400;line-height:1.65;letter-spacing:0;color:var(--text-primary);background:var(--page-bg)}:where(h1,h2,h3,.hero-title,.section-title,.page-title,.post-title,.card-title,.project-title,.project-card-title,.publication-title){font-family:var(--font-heading);line-height:1.06;letter-spacing:-.025em;text-wrap:balance}:where(h1,.hero-title,.post-title,.project-title,.page-title){font-weight:700;line-height:1}:where(h2,h3,.section-title,.card-title,.project-card-title){font-weight:600}:where(h4,h5,h6){font-family:var(--font-body);font-weight:600}:where(p,li,blockquote,dd,dt,td,th,label,input,textarea,select,button,summary,nav,figcaption){font-family:var(--font-body)}:where(code,pre,kbd,samp){font-family:var(--font-mono);letter-spacing:-.02em}:where(.post-meta,.meta-text,.stat-text,.tag,.badge,.tech-stack,.stats,.date,.views,.likes,.category,.firebase-post-stats,.firebase-reactions){font-family:var(--font-body);font-weight:500;font-variant-numeric:tabular-nums}.post-meta :where(a,span,button){font-family:var(--font-body)}.theme-pill{background:var(--theme-accent-soft);color:var(--theme-accent-text);border-color:var(--theme-accent-border)}.theme-pill:visited{color:var(--theme-accent-text)}.theme-pill:hover{background:var(--theme-accent-hover);color:var(--text-on-accent)}.firebase-post-stats :where([data-stat-views],[data-stat-likes],[data-stat-comments],[data-reaction-total],[data-reaction-count]){font-family:var(--font-body);font-weight:500;font-variant-numeric:tabular-nums}.firebase-reactions h2,.firebase-comments h2{font-family:var(--font-heading);font-weight:700;letter-spacing:-.03em}.post-card-title,.project-title,.hero-title{font-family:var(--font-heading)}.project-card-title{font-family:var(--font-heading);font-weight:600}#sidebar .profile-name{font-family:var(--font-heading);font-weight:700}:root body .footer .admin-comments-link,:root body .footer .admin-comments-link:visited,:root body .footer .admin-comments-link:hover,:root body .footer .admin-comments-link:active{color:inherit;font:inherit;opacity:1;text-decoration:none;background:none;cursor:default}:root body .footer .admin-comments-link:focus-visible{outline:1px solid currentColor;outline-offset:2px;border-radius:2px}:root:not(.dark) body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,.project-discovery-tab[aria-selected=true],.project-capability-scroll button[aria-pressed=true]){border-color:var(--action-primary-border)!important;background:var(--action-primary-bg)!important;color:var(--action-primary-text)!important}:root:not(.dark) body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,.project-discovery-tab[aria-selected=true],.project-capability-scroll button[aria-pressed=true]):hover{border-color:var(--action-primary-border-hover)!important;background:var(--action-primary-bg-hover)!important;color:var(--action-primary-text)!important}:root:not(.dark) body .project-capability-scroll button[aria-pressed=true] small{color:#fff!important}:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 48%,transparent);outline-offset:3px}.project-detail-frame{border-radius:var(--radius-lg)}.project-detail-surface{border-color:var(--border-subtle);background:var(--surface);box-shadow:var(--shadow-md)}.project-detail-title{max-width:24ch;color:var(--text-primary)!important;font-size:clamp(3rem,5.2vw,3.75rem)!important;line-height:1!important;letter-spacing:-.026em;overflow-wrap:break-word;text-wrap:balance}#post-cover{padding:.35rem;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface-2)}#post-cover img{border-radius:calc(var(--radius-lg) - .35rem)}@media (max-width: 640px){.project-detail-surface{padding-inline:1rem!important}.project-detail-title{font-size:clamp(2.15rem,10vw,3rem)!important;line-height:1.02!important}}@media (prefers-reduced-motion: reduce){html:focus-within{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--font-display: "Raleway Variable", "Raleway", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: var(--font-display);--bg-deep: #E6EDF0;--bg-base: #F6F7F5;--bg-elevated: #F1F4F5;--bg-soft: #EAF0F3;--accent-color: #1264E8;--accent-hover: #2488FF;--accent-cyan: #43D7FF;--accent-blue: #2488FF;--accent-deep: #1264E8;--accent-violet: #8178FF;--primary: var(--accent-color);--theme-accent: var(--accent-color);--theme-accent-hover: var(--accent-hover);--theme-accent-soft: color-mix(in srgb, var(--accent-color) 9%, #F6F7F5);--theme-accent-border: color-mix(in srgb, var(--accent-color) 28%, rgba(43, 78, 108, .14));--theme-accent-text: color-mix(in srgb, var(--accent-color) 88%, #091827);--text-on-accent: #FFFFFF;--page-bg: var(--bg-base);--card-bg: rgba(241, 244, 245, .56);--surface: var(--card-bg);--surface-2: var(--bg-soft);--surface-elevated: var(--bg-elevated);--surface-transparent: rgba(241, 244, 245, .42);--surface-hover: rgba(250, 252, 252, .82);--control-bg: rgba(234, 240, 243, .72);--card-bg-hover: var(--surface-hover);--card-media-bg: var(--bg-soft);--float-panel-bg: rgba(246, 249, 250, .96);--text-primary: #101923;--text-secondary: #526475;--text-muted: #718597;--text-subtle: #8A9BAA;--deep-text: #07111D;--card-border: rgba(65, 101, 130, .11);--border-soft: rgba(65, 101, 130, .11);--border-subtle: rgba(65, 101, 130, .09);--border-default: rgba(65, 101, 130, .14);--border-hover: rgba(36, 136, 255, .28);--border-strong: rgba(65, 101, 130, .2);--line-divider: rgba(65, 101, 130, .1);--line-color: var(--line-divider);--meta-divider: #8797A5;--radius-sm: .4rem;--radius-md: .6rem;--radius-control: .6rem;--radius-lg: .9rem;--radius-card: .9rem;--radius-large: 1rem;--shadow-sm: 0 12px 30px -26px rgba(30, 59, 82, .28);--shadow-md: 0 26px 64px -50px rgba(30, 59, 82, .36);--card-shadow: 0 22px 54px -46px rgba(30, 59, 82, .3), inset 0 1px 0 rgba(255, 255, 255, .62);--card-shadow-hover: 0 26px 64px -46px rgba(20, 92, 230, .2), 0 0 42px rgba(69, 216, 255, .035), inset 0 1px 0 rgba(255, 255, 255, .75);--btn-content: var(--accent-color);--btn-regular-bg: color-mix(in srgb, var(--accent-color) 8%, var(--surface-elevated));--btn-regular-bg-hover: color-mix(in srgb, var(--accent-color) 13%, var(--surface-elevated));--btn-regular-bg-active: color-mix(in srgb, var(--accent-color) 18%, var(--surface-elevated));--btn-plain-bg-hover: color-mix(in srgb, var(--accent-color) 7%, transparent);--btn-plain-bg-active: color-mix(in srgb, var(--accent-color) 11%, transparent);--btn-card-bg-hover: color-mix(in srgb, var(--accent-color) 6%, var(--card-bg));--btn-card-bg-active: color-mix(in srgb, var(--accent-color) 11%, var(--card-bg));--enter-btn-bg: var(--btn-regular-bg);--enter-btn-bg-hover: var(--btn-regular-bg-hover);--enter-btn-bg-active: var(--btn-regular-bg-active);--link-hover: #145CE6;--link-active: #0B4FCC;--link-underline: rgba(20, 92, 230, .26);--selection-bg: rgba(52, 135, 255, .18);--codeblock-selection: rgba(69, 216, 255, .2);--codeblock-bg: #091827;--codeblock-topbar-bg: #0E1C2B;--inline-code-bg: var(--btn-regular-bg);--inline-code-color: var(--btn-content);--license-block-bg: rgba(14, 28, 43, .05);--title-active: var(--accent-color);--gold: var(--accent-color);--toc-badge-bg: var(--btn-regular-bg);--toc-btn-hover: var(--btn-regular-bg-hover);--toc-btn-active: var(--btn-regular-bg-active);--toc-item-active: var(--accent-color);--card-accent-consulting: var(--accent-color);--card-accent-industrial: var(--accent-color);--card-accent-self: var(--accent-color);--card-accent-healthcare: var(--accent-color);--card-accent-ai: var(--accent-color);--card-accent-incident: var(--accent-color);--card-accent-telecom: var(--accent-color);--card-accent-predictive: var(--accent-color);--display-light-icon: 1;--display-dark-icon: 0;--scrollbar-bg: rgba(9, 24, 39, .28);--scrollbar-bg-hover: rgba(9, 24, 39, .42);--scrollbar-bg-active: rgba(9, 24, 39, .56);--admonitions-color-tip: #0E7490;--admonitions-color-note: #145CE6;--admonitions-color-important: #5A54D6;--admonitions-color-warning: #9A6414;--admonitions-color-caution: #A23B5A}:root.dark{--bg-deep: #03080E;--bg-base: #050C14;--bg-elevated: #08121D;--bg-soft: #0A1723;--accent-color: #43D7FF;--accent-hover: #73E4FF;--primary: var(--accent-color);--theme-accent: var(--accent-color);--theme-accent-hover: var(--accent-hover);--theme-accent-soft: rgba(67, 215, 255, .075);--theme-accent-border: rgba(91, 205, 242, .28);--theme-accent-text: #73E4FF;--text-on-accent: #03111C;--page-bg: var(--bg-base);--card-bg: rgba(8, 18, 29, .38);--surface: var(--card-bg);--surface-2: var(--bg-soft);--surface-elevated: var(--bg-elevated);--surface-transparent: rgba(8, 18, 29, .38);--surface-hover: rgba(10, 23, 35, .7);--control-bg: rgba(8, 18, 29, .68);--card-bg-hover: var(--surface-hover);--card-media-bg: var(--bg-deep);--float-panel-bg: rgba(5, 12, 20, .96);--text-primary: #F4F8FB;--text-secondary: #9AAFC0;--text-muted: #6C849A;--text-subtle: #5E778C;--deep-text: #03111C;--card-border: rgba(123, 181, 218, .1);--border-soft: rgba(123, 181, 218, .1);--border-subtle: rgba(123, 181, 218, .08);--border-default: rgba(123, 181, 218, .14);--border-hover: rgba(67, 215, 255, .3);--border-strong: rgba(123, 181, 218, .18);--line-divider: rgba(123, 181, 218, .085);--line-color: var(--line-divider);--meta-divider: #5E788D;--shadow-sm: 0 18px 40px -34px rgba(0, 0, 0, .74);--shadow-md: 0 30px 74px -56px rgba(0, 0, 0, .88), 0 0 42px rgba(69, 216, 255, .025);--card-shadow: 0 24px 58px -50px rgba(0, 0, 0, .9), inset 0 1px 0 rgba(188, 222, 242, .025);--card-shadow-hover: 0 28px 70px -52px rgba(0, 0, 0, .94), 0 0 42px rgba(69, 216, 255, .055), inset 0 1px 0 rgba(188, 222, 242, .045);--btn-content: #73E4FF;--btn-regular-bg: rgba(52, 135, 255, .11);--btn-regular-bg-hover: rgba(69, 216, 255, .14);--btn-regular-bg-active: rgba(69, 216, 255, .18);--btn-plain-bg-hover: rgba(69, 216, 255, .065);--btn-plain-bg-active: rgba(69, 216, 255, .1);--btn-card-bg-hover: rgba(69, 216, 255, .055);--btn-card-bg-active: rgba(69, 216, 255, .085);--link-hover: #73E4FF;--link-active: #45D8FF;--link-underline: rgba(69, 216, 255, .28);--selection-bg: rgba(69, 216, 255, .2);--codeblock-selection: rgba(69, 216, 255, .22);--codeblock-bg: #07111D;--codeblock-topbar-bg: #0B1522;--license-block-bg: rgba(11, 21, 34, .82);--display-light-icon: 0;--display-dark-icon: 1;--scrollbar-bg: rgba(143, 163, 181, .32);--scrollbar-bg-hover: rgba(143, 163, 181, .48);--scrollbar-bg-active: rgba(143, 163, 181, .62);--admonitions-color-tip: #45D8FF;--admonitions-color-note: #3487FF;--admonitions-color-important: #8B7CFF;--admonitions-color-warning: #D7A84C;--admonitions-color-caution: #D56B8A}html{background:var(--page-bg);color-scheme:light}html.dark{color-scheme:dark}body{position:relative;min-width:320px;font-weight:420;letter-spacing:-.004em;background-color:var(--page-bg);background-image:radial-gradient(circle at 84% 5%,rgba(52,135,255,.07),transparent 28rem),radial-gradient(circle at 8% 44%,rgba(69,216,255,.035),transparent 30rem),linear-gradient(180deg,color-mix(in srgb,var(--page-bg) 98%,#DDEAF0),var(--page-bg));background-attachment:fixed}:root.dark body{background:var(--bg-base);background-image:radial-gradient(circle at 82% 4%,rgba(36,136,255,.075),transparent 30rem),radial-gradient(circle at 8% 42%,rgba(67,215,255,.028),transparent 34rem),linear-gradient(180deg,var(--bg-deep) 0%,var(--bg-base) 24rem,var(--bg-elevated) 78rem,var(--bg-base) 100%);background-attachment:fixed;color:var(--text-primary)}body:before{position:fixed;z-index:-1;inset:0;background-image:linear-gradient(rgba(42,83,112,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(42,83,112,.014) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(to bottom,transparent,black 20%,black 80%,transparent);mask-image:linear-gradient(to bottom,transparent,black 20%,black 80%,transparent);content:"";pointer-events:none}::-moz-selection{background:var(--selection-bg);color:var(--text-primary)}::selection{background:var(--selection-bg);color:var(--text-primary)}:where(h1,h2,h3,.hero-title,.section-title,.page-title,.post-title,.card-title,.project-title,.project-card-title,.publication-title){font-family:var(--font-heading);font-feature-settings:"ss01" 1,"ss02" 1;letter-spacing:-.046em}:where(h1,.hero-title,.post-title,.project-title,.page-title){font-weight:650}:where(h2,h3,.section-title,.card-title,.project-card-title){font-weight:620}#banner-wrapper{isolation:isolate;overflow-x:clip!important;overflow-y:visible!important;background:var(--bg-deep)}#banner-wrapper:after{position:absolute;z-index:2;top:0;right:0;bottom:-10rem;left:0;background:linear-gradient(90deg,rgba(230,237,240,.18),transparent 18%,transparent 80%,rgba(230,237,240,.16)),linear-gradient(180deg,rgba(246,247,245,0) 0%,rgba(246,247,245,.04) 44%,rgba(246,247,245,.48) 72%,rgba(246,247,245,.88) 88%,var(--page-bg) 100%);content:"";pointer-events:none}:root.dark #banner-wrapper:after{background:linear-gradient(90deg,rgba(3,8,14,.34),transparent 18%,transparent 80%,rgba(3,8,14,.3)),radial-gradient(circle at 76% 44%,rgba(67,215,255,.045),transparent 31%),linear-gradient(180deg,rgba(3,8,14,0) 0%,rgba(3,8,14,.05) 42%,rgba(5,12,20,.42) 67%,rgba(5,12,20,.84) 84%,var(--page-bg) 100%)}#banner-wrapper img{filter:hue-rotate(166deg) saturate(.72) brightness(1.03) contrast(.96)}:root.dark #banner-wrapper img{filter:hue-rotate(166deg) saturate(.76) brightness(.52) contrast(1.07)}:root body #navbar>div:first-child{background:transparent!important}:root body #navbar .site-navbar-surface{height:4.35rem!important;border:0!important;border-bottom:1px solid var(--border-soft)!important;border-radius:0!important;background:#f6f7f594!important;box-shadow:none!important;-webkit-backdrop-filter:blur(20px) saturate(1.04)!important;backdrop-filter:blur(20px) saturate(1.04)!important}:root.dark body #navbar .site-navbar-surface{background:#03080ea3!important;box-shadow:0 1px #43d7ff03!important}:root body #navbar .btn-plain{position:relative;border-radius:.55rem!important;color:var(--text-secondary);font-weight:600}:root body #navbar .btn-plain:hover{background:var(--btn-plain-bg-hover);color:var(--text-primary)}:root body #navbar nav a{font-size:.82rem;letter-spacing:.015em;text-decoration:none}:root body #navbar nav a:after{position:absolute;right:1rem;bottom:.3rem;left:1rem;height:1px;background:linear-gradient(90deg,transparent,var(--accent-blue),var(--accent-cyan),transparent);box-shadow:0 0 8px #45d8ff2e;content:"";opacity:0;transform:scaleX(.25);transition:opacity .35s ease,transform .42s cubic-bezier(.16,1,.3,1)}:root body #navbar nav a:hover:after,:root body #navbar nav a.nav-link-active:after{opacity:1;transform:scaleX(1)}:root body #navbar .nav-link-active{color:var(--text-primary);text-decoration:none}:root body #search-bar,:root body #search-bar-inside{border:1px solid var(--border-soft)!important;border-radius:var(--radius-control)!important;background:color-mix(in srgb,var(--surface-2) 72%,transparent)!important;box-shadow:inset 0 1px color-mix(in srgb,white 24%,transparent)}:root body #search-bar:focus-within,:root body #search-bar-inside:focus-within{border-color:color-mix(in srgb,var(--primary) 58%,var(--border-soft))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent),0 0 28px #45d8ff0a}:root body :where(.card-base,.float-panel,.project-discovery-toolbar,.problem-explorer,.project-case-card,.project-card-discovery-panel,.project-intelligence-dialog,.capabilities-shell,.capability-subsection,.capability-detail-panel,.comparison-selector,.comparison-results,.impact-explorer,.impact-list-panel,.project-overview-card,.project-view-card,.technical-section,.technical-article-heading,.portfolio-evidence-card){border-color:var(--border-subtle);background:var(--surface-transparent);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}:root body :where(.card-base,.project-case-card,.problem-project-card,.impact-list-project,.portfolio-evidence-card):hover{border-color:var(--border-hover);box-shadow:0 0 40px #43d7ff0b}:root body :where(.project-discovery-tabs,.project-core-filters select,.project-main-search input,.problem-search-control input,.problem-switch-button,.problem-filter-chip,.problem-use-case-chip,.problem-related-chip,.project-capability-scroll button,.project-intelligence-close,.project-intelligence-suggestion-list button,.project-intelligence-cancel,.project-intelligence-input-row input,.project-intelligence-sources a,.project-intelligence-related a,.project-intelligence-actions a,.project-intelligence-actions button,.project-intelligence-navigation a,.capability-controls,.capability-control input,.capability-control select,.capability-match-button,.comparison-selected-chip,.comparison-project-option,.comparison-mode-switch button,.impact-segmented,.impact-command-button,.impact-icon-button,.impact-cluster-by-control,.impact-cluster-by-control select,.impact-chip-row span,.impact-detail-relationship-tags span,.impact-hover-tags span,.impact-hover-types span,.impact-domain-chip){border-color:var(--border-soft);background:color-mix(in srgb,var(--surface-2) 72%,transparent);color:var(--text-secondary);box-shadow:inset 0 1px color-mix(in srgb,white 18%,transparent)}:root.dark body :where(.project-discovery-tabs,.project-core-filters select,.project-main-search input,.problem-search-control input,.problem-switch-button,.problem-filter-chip,.problem-use-case-chip,.problem-related-chip,.project-capability-scroll button,.capability-control input,.capability-control select,.project-intelligence-input-row input){box-shadow:inset 0 1px #b3dcf406}:root body :where(input,select,textarea)::-moz-placeholder{color:var(--text-subtle);opacity:1}:root body :where(input,select,textarea)::placeholder{color:var(--text-subtle);opacity:1}:root body :where(input,select,textarea):hover{border-color:color-mix(in srgb,var(--primary) 30%,var(--border-soft))}:root body :where(input,select,textarea):focus-visible{border-color:color-mix(in srgb,var(--primary) 64%,var(--border-soft));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent),0 0 30px #45d8ff0a;outline:none}:root body .project-collection-intro{gap:clamp(1.5rem,3.2vw,2.75rem);padding-top:clamp(1.35rem,3vw,2.35rem);padding-bottom:clamp(1.25rem,2.8vw,2rem);border-bottom-color:var(--line-divider)}:root body .project-collection-eyebrow,:root body :where(.portfolio-evidence-eyebrow,.project-view-eyebrow,.capability-section-kicker,.capability-detail-kicker){color:var(--primary);font-family:var(--font-mono);font-size:.66rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}:root body .project-collection-copy h1{max-width:14ch;font-size:clamp(2.35rem,3vw,2.6rem);font-weight:620;line-height:.98;letter-spacing:-.052em}:root body .project-collection-summary{max-width:42rem;color:var(--text-secondary);font-size:1rem;line-height:1.62}:root body .project-collection-stats{border-color:var(--line-divider);background:color-mix(in srgb,var(--card-bg) 44%,transparent);box-shadow:none}:root body .project-collection-stats>div{border-color:var(--line-divider)}:root body .project-collection-stats dt{color:var(--text-muted);font-family:var(--font-mono);font-size:.62rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}:root body .project-collection-stats dd{color:var(--text-primary);font-family:var(--font-heading);font-weight:620;letter-spacing:-.035em}:root body .project-discovery-toolbar{border-color:var(--border-soft)!important;background:color-mix(in srgb,var(--card-bg) 88%,transparent)!important;box-shadow:var(--shadow-sm)!important;-webkit-backdrop-filter:blur(22px) saturate(1.06)!important;backdrop-filter:blur(22px) saturate(1.06)!important}:root body .project-discovery-toolbar.is-stuck{border-color:color-mix(in srgb,var(--primary) 34%,var(--border-soft))!important;box-shadow:var(--card-shadow-hover)!important}:root body .project-discovery-tabs{padding:.2rem;border-radius:var(--radius-control)}:root body .project-discovery-tab{border-radius:.45rem;font-size:.75rem;font-weight:650;letter-spacing:.015em}:root body :where(.project-discovery-tab[aria-selected=true],.project-view-tabs button[aria-selected=true],.project-capability-scroll button[aria-pressed=true],.problem-switch-button[aria-pressed=true],.problem-switch-button.is-active,.problem-filter-chip[aria-pressed=true],.problem-filter-chip.is-active,.problem-use-case-chip[aria-pressed=true],.problem-use-case-chip.is-active,.impact-view-button[aria-selected=true],.impact-layout-button[aria-pressed=true],.comparison-mode-switch button[aria-pressed=true]){border-color:color-mix(in srgb,var(--primary) 48%,var(--border-soft))!important;background:color-mix(in srgb,var(--primary) 11%,var(--card-bg))!important;box-shadow:0 0 28px #45d8ff09,inset 0 1px color-mix(in srgb,white 18%,transparent)!important;color:var(--theme-accent-text)!important}:root body .project-capability-scroll button{border-radius:.5rem;font-family:var(--font-mono);font-size:.65rem;font-weight:500;letter-spacing:.02em;transition:border-color .32s ease,background-color .32s ease,color .32s ease,transform .38s cubic-bezier(.16,1,.3,1)}:root body .project-capability-scroll button:hover{transform:translateY(-1px)}:root body .project-result-summary{padding-bottom:.65rem;border-bottom:1px solid var(--line-divider);font-family:var(--font-mono);font-size:.64rem;letter-spacing:.035em}:root body .project-case-card{--project-accent: var(--primary) !important;border-color:var(--border-soft)!important;border-radius:var(--radius-card)!important;background:linear-gradient(150deg,color-mix(in srgb,var(--card-bg) 96%,var(--accent-blue)),var(--card-bg) 42%,color-mix(in srgb,var(--card-bg) 97%,var(--page-bg)))!important;box-shadow:var(--card-shadow)!important;transition:transform .42s cubic-bezier(.16,1,.3,1),border-color .32s ease,background-color .32s ease,box-shadow .42s ease!important}:root body .project-case-card:hover{border-color:color-mix(in srgb,var(--primary) 38%,var(--border-soft))!important;background:linear-gradient(150deg,color-mix(in srgb,var(--card-bg-hover) 94%,var(--accent-cyan)),var(--card-bg-hover) 44%,color-mix(in srgb,var(--card-bg-hover) 97%,var(--page-bg)))!important;box-shadow:var(--card-shadow-hover)!important;transform:translateY(-2px)!important}:root body .project-card-media-shell,:root body .project-card-media{border-color:var(--border-soft);background:var(--card-media-bg)}:root body .project-card-media-shell{border-radius:calc(var(--radius-card) - .28rem)}:root body .project-card-media :where(img,.project-card-image-element){filter:saturate(.86) contrast(1.02);transition:transform .46s cubic-bezier(.16,1,.3,1),filter .42s ease,opacity .42s ease!important}:root body .project-case-card:hover .project-card-media :where(img,.project-card-image-element){filter:saturate(.96) contrast(1.025) brightness(1.025);transform:scale(1.018)}:root body .project-card-body{gap:.72rem;padding:1.1rem 1.15rem 1.15rem;border-top-color:var(--line-divider)}:root body .project-card-title{font-size:clamp(1.28rem,2vw,1.58rem);font-weight:630;line-height:1.08;letter-spacing:-.042em}:root body .project-card-title a:hover{color:color-mix(in srgb,var(--primary) 82%,var(--text-primary))}:root body .project-card-meta,:root body .project-maturity-line{font-family:var(--font-mono);font-size:.64rem;font-weight:500;letter-spacing:.075em}:root body .project-card-summary{color:var(--text-secondary);font-size:.9rem;line-height:1.62}:root body :where(.project-industry-badge,.project-status-badge,.project-featured-evidence,.project-capability-list li,.problem-match-tags span,.problem-project-tags span,.publication-indicators li,.project-intelligence-card-chips span,.project-intelligence-technologies span){border-color:var(--border-soft);border-radius:.42rem;background:color-mix(in srgb,var(--surface-2) 48%,transparent);color:var(--text-secondary);font-family:var(--font-mono);font-size:.61rem;font-weight:500;letter-spacing:.035em}:root body .project-card-proof,:root body .project-match-summary{border-color:var(--border-soft);background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 5%,transparent),transparent 74%)}:root body .project-card-actions{border-top-color:var(--line-divider)}:root body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link,.project-intelligence-trigger,.project-intelligence-input-row button,.project-intelligence-primary-action,.project-intelligence-local-ai-button){border:1px solid var(--action-primary-border)!important;background:var(--action-primary-bg)!important;box-shadow:0 0 24px #43d7ff08!important;color:var(--action-primary-text)!important;transition:border-color .3s ease,filter .3s ease,box-shadow .4s ease,transform .38s cubic-bezier(.16,1,.3,1)!important}:root body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link,.project-intelligence-trigger,.project-intelligence-input-row button,.project-intelligence-primary-action,.project-intelligence-local-ai-button):hover{border-color:var(--action-primary-border-hover)!important;background:var(--action-primary-bg-hover)!important;box-shadow:0 0 32px #43d7ff0f!important;filter:none;transform:none}:root body .project-case-card .project-primary-action:after{transition:transform .38s cubic-bezier(.16,1,.3,1)}:root body .project-case-card .project-primary-action:hover:after{transform:translate(3px)}:root body :where(.btn-plain,.project-clear-all,.project-clear-capabilities,.project-secondary-actions a,.project-evidence a,.project-card-related a,.project-ask-menu summary,.capabilities-shell .comparison-project-actions a,.portfolio-evidence-copy>a,.credential-links a,.publication-doi-link){color:var(--theme-accent-text)}:root body :where(.project-secondary-actions a,.project-evidence a,.project-card-related a,.portfolio-evidence-copy>a,.credential-links a,.publication-doi-link){text-decoration-color:transparent;text-underline-offset:.28em;transition:color .3s ease,text-decoration-color .3s ease,transform .38s cubic-bezier(.16,1,.3,1)}:root body :where(.project-secondary-actions a,.project-evidence a,.project-card-related a,.portfolio-evidence-copy>a,.credential-links a,.publication-doi-link):hover{color:var(--primary);text-decoration-color:color-mix(in srgb,var(--primary) 44%,transparent)}:root body #sidebar>div:first-child>.card-base{padding:.85rem;background:linear-gradient(150deg,color-mix(in srgb,var(--card-bg) 94%,var(--accent-blue)),var(--card-bg) 46%,color-mix(in srgb,var(--card-bg) 97%,var(--page-bg)))}:root body #sidebar>div:first-child>.card-base>a{border:1px solid var(--border-soft);border-radius:.7rem;box-shadow:none}:root body #sidebar>div:first-child>.card-base>a img{filter:saturate(.88) contrast(1.025)}:root body #sidebar .profile-name{color:var(--text-primary);font-family:var(--font-heading);font-size:1rem;font-weight:620;letter-spacing:-.025em}:root body #sidebar .profile-bio{color:var(--text-secondary);font-size:.78rem;line-height:1.5}:root body #sidebar .social-links a{border:1px solid var(--border-soft);border-radius:.5rem!important;background:color-mix(in srgb,var(--surface-2) 58%,transparent);box-shadow:none}:root body #sidebar .social-links a:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--border-soft));background:var(--btn-regular-bg-hover);box-shadow:0 0 26px #45d8ff0b;transform:translateY(-1px)}:root body #sidebar widget-layout.card-base>div:first-child{color:var(--text-primary);font-size:.76rem;font-weight:650;letter-spacing:.075em;text-transform:uppercase}:root body #sidebar widget-layout.card-base>div:first-child:before{width:1px;background:linear-gradient(to bottom,var(--accent-cyan),var(--accent-blue));box-shadow:0 0 12px #45d8ff26}:root body #sidebar #categories a>button{border:0;border-radius:.45rem;background:transparent;color:var(--text-secondary);font-size:.76rem}:root body #sidebar #categories a>button:hover{background:var(--btn-plain-bg-hover);color:var(--text-primary)}:root body #sidebar #categories a>button>div>div:last-child:not(:first-child){border:1px solid var(--border-soft);background:color-mix(in srgb,var(--primary) 7%,transparent);color:var(--theme-accent-text);font-family:var(--font-mono)}:root body #sidebar .tag-cloud a,:root body #sidebar .tag-cloud a:visited{border-color:var(--border-soft);border-radius:.4rem;background:color-mix(in srgb,var(--surface-2) 46%,transparent);color:var(--text-secondary);font-family:var(--font-mono);font-size:.62rem;font-weight:500;letter-spacing:.025em}:root body #sidebar .tag-cloud a:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border-soft));background:var(--theme-accent-soft);color:var(--theme-accent-text)}:root body .impact-mini-preview{border-color:var(--line-divider);background:radial-gradient(circle at center,color-mix(in srgb,var(--primary) 8%,transparent),transparent 68%)}:root body .impact-mini-core,:root body .impact-mini-node{border-color:color-mix(in srgb,var(--primary) 24%,var(--line-divider));background:color-mix(in srgb,var(--card-bg) 91%,transparent)}:root body .publication-record{border-top-color:var(--line-divider)}:root body .publication-record h3{font-size:clamp(1rem,1.8vw,1.24rem);font-weight:610;line-height:1.22;letter-spacing:-.03em}:root body .publication-number,:root body .publication-record-meta,:root body .publication-count{font-family:var(--font-mono)}:root body .problem-option-card,:root body .problem-project-card{border-color:var(--border-soft);border-radius:var(--radius-card);background:color-mix(in srgb,var(--card-bg) 94%,var(--page-bg));box-shadow:var(--card-shadow);transition:transform .42s cubic-bezier(.16,1,.3,1),border-color .32s ease,background-color .32s ease,box-shadow .42s ease}:root body .problem-option-card:hover,:root body .problem-project-card:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border-soft));background:color-mix(in srgb,var(--card-bg-hover) 97%,var(--primary));box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}:root body .problem-option-icon,:root body .problem-detail-icon{border-color:var(--theme-accent-border);border-radius:.6rem;background:var(--theme-accent-soft);color:var(--theme-accent-text)}:root body .problem-match-summary{border-color:var(--border-soft);background:color-mix(in srgb,var(--theme-accent-soft) 46%,transparent)}:root body .project-impact-shell{--impact-surface: var(--card-bg);--impact-surface-muted: var(--surface-2);--impact-border: var(--border-soft);--impact-focus: var(--primary)}:root body :where(.project-impact-summary,.impact-explorer-body,.impact-filter-panel,.impact-cluster-legend,.impact-details-panel,.impact-hover-card,.capability-matrix-scroll,.comparison-table-scroll,.capability-detail-panel,.comparison-results,.comparison-summary){border-color:var(--border-soft);background:color-mix(in srgb,var(--card-bg) 94%,transparent)}:root body :where(.comparison-row-similarity>*,.comparison-row-difference>*,.comparison-table .comparison-property-column){background:color-mix(in srgb,var(--surface-2) 72%,transparent)}:root body .project-overview-card,:root body .project-view-card,:root body .technical-section,:root body .technical-article-heading{border-radius:var(--radius-card)}:root body :where(.project-view-card h2,.technical-section>h2,.technical-article-heading h2):after{background:linear-gradient(90deg,var(--accent-blue),var(--accent-cyan),transparent 72%);opacity:.62}:root body :where(.project-metric-grid>div,.technical-definition-grid>div,.technical-card-grid article,.pipeline-flow li){border-color:var(--border-soft);border-radius:.65rem;background:color-mix(in srgb,var(--surface-2) 54%,transparent)}:root body :where(.technical-table-scroll th,.technical-table-scroll td){border-color:var(--line-divider)}:root body .project-intelligence-dialog{border-color:var(--border-strong);border-radius:1rem;background:color-mix(in srgb,var(--float-panel-bg) 97%,transparent);box-shadow:0 34px 90px -48px #000000c7,0 0 54px #45d8ff0b;-webkit-backdrop-filter:blur(28px) saturate(1.08);backdrop-filter:blur(28px) saturate(1.08)}:root body :where(.project-intelligence-header,.project-intelligence-form,.project-intelligence-ai-status-row,.project-intelligence-local-ai,.project-intelligence-local-ai-explanation,.project-intelligence-project-card){border-color:var(--line-divider)}:root body :where(.project-intelligence-ai-status-row,.project-intelligence-local-ai-explanation,.project-intelligence-project-card,.project-intelligence-message.is-user,.project-intelligence-evidence){background:color-mix(in srgb,var(--surface-2) 58%,transparent)}:root body .project-intelligence-backdrop{background:#030911ad;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}:root body .project-intelligence-heading-icon{border-color:var(--theme-accent-border);background:var(--theme-accent-soft);color:var(--theme-accent-text)}:root body .footer>div:first-child{border:0!important;border-top:1px solid transparent!important;-o-border-image:linear-gradient(90deg,transparent,color-mix(in srgb,var(--primary) 32%,var(--line-divider)),transparent) 1!important;border-image:linear-gradient(90deg,transparent,color-mix(in srgb,var(--primary) 32%,var(--line-divider)),transparent) 1!important}:root body .footer>div:last-of-type{color:var(--text-muted)}:root body .footer a{color:var(--theme-accent-text)}:where(a,button,input,select,textarea,summary):focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 58%,transparent);outline-offset:3px}.project-detail-title{font-size:clamp(2.75rem,5vw,3.65rem)!important;font-weight:630!important;line-height:.98!important;letter-spacing:-.052em}#post-cover{padding:.3rem;border-color:var(--border-subtle);background:var(--surface-2);box-shadow:var(--card-shadow)}#post-cover img{border-radius:calc(var(--radius-lg) - .3rem);filter:saturate(.9) contrast(1.02)}@media (max-width: 1023px){:root body .project-collection-copy h1{max-width:17ch;font-size:clamp(2.35rem,6vw,3.15rem)}:root body #navbar .site-navbar-surface{border-radius:0 0 .72rem .72rem!important}}@media (max-width: 640px){body,:root.dark body{background-image:radial-gradient(circle at 92% 5%,rgba(52,135,255,.075),transparent 18rem),linear-gradient(180deg,var(--page-bg),var(--page-bg))}:root body #navbar .site-navbar-surface{height:4.1rem!important;padding-inline:.65rem!important}:root body #navbar>.site-navbar-surface>a{padding-inline:.75rem!important}:root body .project-collection-intro{padding-inline:.25rem}:root body .project-collection-copy h1{max-width:16ch;font-size:clamp(2.15rem,10.8vw,3rem);line-height:.99}:root body .project-collection-summary{font-size:.94rem}:root body .project-case-card:hover,:root body .problem-option-card:hover,:root body .problem-project-card:hover{transform:none!important}:root body .project-card-body{padding-inline:1rem}.project-detail-title{font-size:clamp(2.05rem,10vw,2.85rem)!important;line-height:1!important}}@media (max-width: 760px){:root body .project-discovery-toolbar{overflow:visible!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}:root body .project-filter-drawer.is-open{z-index:110}}:root.dark body :where(.card-base,.float-panel,.project-discovery-toolbar,.problem-explorer,.project-case-card,.project-card-discovery-panel,.project-intelligence-dialog,.capabilities-shell,.capability-subsection,.capability-detail-panel,.comparison-selector,.comparison-results,.impact-explorer,.impact-list-panel,.project-overview-card,.project-view-card,.technical-section,.technical-article-heading,.portfolio-evidence-card){border-color:var(--border-soft);background:linear-gradient(145deg,#0a1b2ce0,#091827c7 44%,#07111de6);box-shadow:var(--card-shadow)}:root.dark body :where(.project-discovery-tabs,.project-core-filters select,.project-main-search input,.problem-search-control input,.problem-switch-button,.problem-filter-chip,.problem-use-case-chip,.problem-related-chip,.project-capability-scroll button,.project-intelligence-close,.project-intelligence-suggestion-list button,.project-intelligence-cancel,.project-intelligence-input-row input,.project-intelligence-sources a,.project-intelligence-related a,.project-intelligence-actions a,.project-intelligence-actions button,.project-intelligence-navigation a,.capability-controls,.capability-control input,.capability-control select,.capability-match-button,.comparison-selected-chip,.comparison-project-option,.comparison-mode-switch button,.impact-segmented,.impact-command-button,.impact-icon-button,.impact-cluster-by-control,.impact-cluster-by-control select,.impact-chip-row span,.impact-detail-relationship-tags span,.impact-hover-tags span,.impact-hover-types span,.impact-domain-chip){border-color:var(--border-soft);background:#0b1522bd;color:var(--text-secondary);box-shadow:inset 0 1px #b3dcf406}:root.dark body :where(.project-core-filters select,.project-main-search input,.problem-search-control input,.capability-control input,.capability-control select,.project-intelligence-input-row input):hover{border-color:#45d8ff47}:root.dark body .project-discovery-toolbar{border-color:var(--border-soft)!important;background:#07111de0!important}:root.dark body .project-case-card{border-color:var(--border-soft)!important;background:linear-gradient(150deg,#0a1b2ceb,#091827cc 45%,#07111df0)!important}:root.dark body .project-case-card:hover{border-color:#45d8ff57!important;background:linear-gradient(150deg,#0c1f32f5,#0a1b2ce6 45%,#071320f5)!important}:root.dark body .project-card-media-shell,:root.dark body .project-card-media{border-color:var(--border-soft);background:var(--card-media-bg)}:root.dark body :where(.project-industry-badge,.project-status-badge,.project-featured-evidence,.project-capability-list li){border-color:var(--border-soft);background:#0b1522b8;color:var(--text-secondary)}:root.dark body .project-card-actions{border-top-color:var(--line-divider)}:root.dark body .project-card-discovery-panel{border-color:var(--border-soft);background:#07111df5}:root.dark body .project-ask-menu button{background:#0b1522d1;color:var(--text-secondary)}:root.dark body .project-ask-menu button:hover{background:var(--theme-accent-soft);color:var(--theme-accent-text)}:root.dark #sidebar #categories a>button{border:0;background:transparent;color:var(--text-secondary)}:root.dark #sidebar #categories a>button:hover{background:var(--btn-plain-bg-hover);color:var(--text-primary)}:root.dark #sidebar #categories a>button>div>div:last-child:not(:first-child){border:1px solid var(--border-soft);background:#45d8ff0f;color:var(--theme-accent-text)}:root.dark #sidebar .tag-cloud a,:root.dark #sidebar .tag-cloud a:visited{border-color:var(--border-soft);background:#0b1522b3;color:var(--text-secondary)}:root.dark #sidebar .tag-cloud a:hover{border-color:#45d8ff52;background:var(--theme-accent-soft);color:var(--theme-accent-text)}:root.dark body :where(.project-intelligence-header,.project-intelligence-form,.project-intelligence-ai-status-row,.project-intelligence-local-ai,.project-intelligence-local-ai-explanation,.project-intelligence-project-card){border-color:var(--line-divider)}:root.dark body :where(.project-intelligence-ai-status-row,.project-intelligence-local-ai-explanation,.project-intelligence-project-card,.project-intelligence-message.is-user,.project-intelligence-evidence,.project-intelligence-card-chips span,.project-intelligence-technologies span){border-color:var(--border-soft);background:#0b1522bd;color:var(--text-secondary)}:root.dark .project-impact-shell{--impact-surface: rgba(9, 24, 39, .82);--impact-surface-muted: #0B1522;--impact-border: rgba(130, 185, 225, .115);--impact-focus: #45D8FF}:root.dark body :where(.project-impact-summary,.impact-explorer-body,.impact-filter-panel,.impact-cluster-legend,.impact-details-panel,.impact-hover-card,.capability-matrix-scroll,.comparison-table-scroll,.capability-detail-panel,.comparison-results,.comparison-summary){border-color:var(--border-soft);background:#091827d6}:root.dark body :where(.comparison-row-similarity>*,.comparison-row-difference>*,.comparison-table .comparison-property-column){background:#0b1522c2}:root.dark #display-setting,:root.dark #display-setting .accent-slider-shell{border-color:var(--border-soft);background:#07111df5}:root.dark body :where(.project-discovery-tab[aria-selected=true],.project-view-tabs button[aria-selected=true],.project-capability-scroll button[aria-pressed=true],.problem-switch-button[aria-pressed=true],.problem-switch-button.is-active,.problem-filter-chip[aria-pressed=true],.problem-filter-chip.is-active,.problem-use-case-chip[aria-pressed=true],.problem-use-case-chip.is-active,.impact-view-button[aria-selected=true],.impact-layout-button[aria-pressed=true],.comparison-mode-switch button[aria-pressed=true]){border-color:#45d8ff57!important;background:#3487ff1f!important;box-shadow:0 0 28px #45d8ff0a,inset 0 1px #b3dcf409!important;color:#73e4ff!important}:root.dark body .project-capability-scroll button[aria-pressed=true] small,:root.dark body .problem-filter-chip[aria-pressed=true] small,:root.dark body .problem-use-case-chip[aria-pressed=true] small{color:#9ccfe0!important}:root.dark body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link,.project-intelligence-trigger,.project-intelligence-input-row button,.project-intelligence-primary-action,.project-intelligence-local-ai-button){border-color:var(--action-primary-border)!important;background:var(--action-primary-bg)!important;box-shadow:0 0 24px #43d7ff08!important;color:var(--action-primary-text)!important}@media (min-width: 1024px){:root body .project-collection-copy h1{max-width:none}}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#main-grid{position:relative}#main-grid:before{position:absolute;z-index:-1;top:-8rem;right:0;bottom:0;left:0;background:radial-gradient(circle at 64% 2%,color-mix(in srgb,var(--accent-blue) 4%,transparent),transparent 26rem),linear-gradient(180deg,transparent,color-mix(in srgb,var(--page-bg) 96%,transparent) 12rem,transparent 44rem);content:"";pointer-events:none}:root body #navbar .site-navbar-surface{border-bottom-color:var(--border-subtle)!important;transition:background-color .38s ease,border-color .38s ease,-webkit-backdrop-filter .38s ease!important;transition:background-color .38s ease,border-color .38s ease,backdrop-filter .38s ease!important;transition:background-color .38s ease,border-color .38s ease,backdrop-filter .38s ease,-webkit-backdrop-filter .38s ease!important}:root body #navbar .btn-plain{background:transparent;transition:color .3s ease,background-color .3s ease,transform .35s cubic-bezier(.16,1,.3,1)!important}:root body #navbar .btn-plain:hover{transform:translateY(-1px)}:root body #search-bar,:root body #search-bar-inside{border-color:var(--border-subtle)!important;background:var(--control-bg)!important;box-shadow:none!important}:root body #sidebar>div:first-child>.card-base,:root.dark body #sidebar>div:first-child>.card-base{padding:.85rem;border-color:transparent!important;background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}:root body #sidebar>div:first-child>.card-base:hover{border-color:transparent!important;box-shadow:none!important}:root body #sidebar>div:first-child>.card-base>a{border-color:var(--border-default);border-radius:.62rem;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-cyan) 5%,transparent),0 0 28px #43d7ff09;transition:border-color .35s ease,box-shadow .42s ease,filter .35s ease!important}:root body #sidebar>div:first-child>.card-base>a:hover{border-color:color-mix(in srgb,var(--accent-cyan) 28%,var(--border-default));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-cyan) 8%,transparent),0 0 32px #43d7ff0e}:root body #sidebar .profile-name{margin-top:.65rem;font-size:1.04rem;font-weight:650}:root body #sidebar .profile-underline{width:1.15rem;height:1px;margin-top:.38rem;margin-bottom:.5rem;background:linear-gradient(90deg,var(--accent-blue),var(--accent-cyan));box-shadow:0 0 8px #43d7ff2e}:root body #sidebar .profile-bio{color:var(--text-secondary);font-size:.79rem;line-height:1.58}:root body #sidebar .social-links a{border-color:transparent;background:transparent;color:var(--text-muted)}:root body #sidebar .social-links a:hover{border-color:var(--border-hover);background:color-mix(in srgb,var(--accent-cyan) 7%,transparent);color:var(--primary);box-shadow:0 0 22px #43d7ff09}:root body #sidebar-sticky>:where(widget-layout.card-base,.portfolio-evidence-card),:root.dark body #sidebar-sticky>:where(widget-layout.card-base,.portfolio-evidence-card){border:0!important;border-top:1px solid var(--border-subtle)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}:root body #sidebar-sticky>:where(widget-layout.card-base,.portfolio-evidence-card):hover{border-top-color:var(--border-default)!important;box-shadow:none!important}:root body #sidebar widget-layout.card-base>div:first-child{font-size:.7rem;letter-spacing:.11em}:root body .project-collection-intro{padding-top:clamp(2rem,4vw,3.1rem);padding-bottom:clamp(1.75rem,3.5vw,2.65rem);border-bottom-color:var(--border-subtle)}:root body .project-collection-eyebrow{font-size:.64rem;letter-spacing:.17em}:root body .project-collection-copy h1{max-width:16ch;font-size:clamp(2.55rem,3.35vw,3.15rem);font-weight:625;line-height:.96;letter-spacing:-.058em}:root body .project-collection-summary{max-width:40rem;margin-top:clamp(1.7rem,3vw,2.4rem);color:var(--text-secondary);font-size:1rem;line-height:1.66}:root body .project-collection-stats,:root.dark body .project-collection-stats{border:0!important;background:transparent!important;box-shadow:none!important}:root body .project-collection-stats>div{min-height:4.75rem;padding:.85rem .8rem;border:0!important;background:transparent}:root body .project-collection-stats>div:nth-child(odd){border-right:1px solid var(--border-subtle)!important}:root body .project-collection-stats>div:nth-child(-n+2){border-bottom:1px solid var(--border-subtle)!important}:root body .project-collection-stats dd{font-size:1.72rem;font-weight:610;line-height:.95}:root body .project-collection-stats dt{margin-top:.42rem;font-size:.57rem;letter-spacing:.11em}:root body .project-discovery-toolbar,:root.dark body .project-discovery-toolbar{border-color:var(--border-subtle)!important;background:color-mix(in srgb,var(--surface-transparent) 70%,transparent)!important;box-shadow:none!important;-webkit-backdrop-filter:blur(14px) saturate(1.02)!important;backdrop-filter:blur(14px) saturate(1.02)!important}:root body .project-discovery-toolbar.is-stuck{border-color:var(--border-default)!important;background:color-mix(in srgb,var(--bg-base) 88%,transparent)!important;box-shadow:0 12px 34px -30px #03080eb3!important}:root body .project-discovery-tabs{border-color:var(--border-subtle);background:color-mix(in srgb,var(--control-bg) 54%,transparent);box-shadow:none}:root body .project-discovery-tab{border-color:transparent;background:transparent;color:var(--text-muted);transition:border-color .3s ease,background-color .3s ease,color .3s ease,box-shadow .35s ease!important}:root body :where(.project-discovery-tab[aria-selected=true],.project-view-tabs button[aria-selected=true],.project-capability-scroll button[aria-pressed=true],.problem-switch-button[aria-pressed=true],.problem-switch-button.is-active,.problem-filter-chip[aria-pressed=true],.problem-filter-chip.is-active,.problem-use-case-chip[aria-pressed=true],.problem-use-case-chip.is-active,.impact-view-button[aria-selected=true],.impact-layout-button[aria-pressed=true],.comparison-mode-switch button[aria-pressed=true]){border-color:color-mix(in srgb,var(--accent-cyan) 28%,var(--border-subtle))!important;background:color-mix(in srgb,var(--accent-blue) 8%,transparent)!important;box-shadow:inset 0 1px color-mix(in srgb,white 5%,transparent),0 0 24px #43d7ff06!important;color:var(--theme-accent-text)!important}:root body :where(.project-core-filters select,.project-main-search input,.problem-search-control input,.capability-control input,.capability-control select,.project-intelligence-input-row input){border-color:var(--border-subtle);background:var(--control-bg);color:var(--text-primary);box-shadow:none;transition:border-color .3s ease,background-color .3s ease,box-shadow .35s ease!important}:root body .project-main-search kbd{border-color:var(--border-subtle);background:transparent;color:var(--text-muted);box-shadow:none}:root body .project-capability-scroll button{border-color:var(--border-subtle);background:transparent;color:var(--text-muted)}:root body .project-case-card,:root.dark body .project-case-card,:root body :where(.problem-option-card,.problem-project-card,.capability-subsection,.capability-detail-panel,.comparison-selector,.comparison-results,.impact-list-project){border-color:var(--border-subtle)!important;border-radius:.72rem!important;background:var(--surface-transparent)!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;transition:transform .42s cubic-bezier(.16,1,.3,1),border-color .32s ease,background-color .32s ease,box-shadow .42s ease!important}:root body .project-case-card:hover,:root.dark body .project-case-card:hover,:root body :where(.problem-option-card,.problem-project-card,.capability-subsection,.capability-detail-panel,.impact-list-project):hover{border-color:var(--border-hover)!important;background:var(--surface-hover)!important;box-shadow:0 0 40px #43d7ff0e!important;transform:translateY(-1px)!important}:root body .project-card-media-shell{border-color:var(--border-subtle);border-radius:.5rem;background:var(--bg-deep)}:root body .project-card-body{gap:.82rem;padding:1.2rem 1.22rem 1.25rem;border-top-color:var(--border-subtle)}:root body .project-card-title{font-size:clamp(1.35rem,2vw,1.65rem);font-weight:625;line-height:1.05}:root body .project-card-summary{color:var(--text-secondary);line-height:1.68}:root body .project-card-proof,:root body .project-match-summary{border-color:var(--border-subtle);background:color-mix(in srgb,var(--accent-blue) 3.5%,transparent);box-shadow:none}:root body :where(.project-industry-badge,.project-status-badge,.project-featured-evidence,.project-capability-list li,.problem-match-tags span,.problem-project-tags span,.publication-indicators li,.project-intelligence-card-chips span,.project-intelligence-technologies span){border-color:var(--border-subtle);border-radius:.38rem;background:color-mix(in srgb,var(--control-bg) 52%,transparent);color:var(--text-muted)}:root.dark body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link,.project-intelligence-trigger,.project-intelligence-input-row button,.project-intelligence-primary-action,.project-intelligence-local-ai-button){border-color:var(--action-primary-border)!important;background:var(--action-primary-bg)!important;box-shadow:0 0 24px #43d7ff08!important}:root.dark body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link,.project-intelligence-trigger,.project-intelligence-input-row button,.project-intelligence-primary-action,.project-intelligence-local-ai-button):hover{border-color:var(--action-primary-border-hover)!important;background:var(--action-primary-bg-hover)!important;box-shadow:0 0 32px #43d7ff0f!important;transform:none}:root body :where(.capabilities-shell,.impact-explorer,.impact-list-panel,.project-overview-card,.project-view-card,.technical-section,.technical-article-heading,.problem-explorer){border-color:var(--border-subtle);background:color-mix(in srgb,var(--surface-transparent) 78%,transparent);box-shadow:none}:root body :where(.project-impact-summary,.impact-explorer-body,.impact-filter-panel,.impact-cluster-legend,.impact-details-panel,.capability-matrix-scroll,.comparison-table-scroll,.comparison-summary){border-color:var(--border-subtle);background:color-mix(in srgb,var(--control-bg) 52%,transparent);box-shadow:none}:root body .project-intelligence-dialog{border-color:var(--border-default);border-radius:.8rem;background:color-mix(in srgb,var(--float-panel-bg) 96%,transparent);box-shadow:0 30px 84px -54px #000000d1,0 0 44px #43d7ff09}:root body :where(.project-view-card h2,.technical-section>h2,.technical-article-heading h2):after{height:1px;opacity:.38}:root:not(.dark) body .project-case-card,:root:not(.dark) body :where(.problem-option-card,.problem-project-card,.capability-subsection,.capability-detail-panel,.comparison-selector,.comparison-results,.impact-list-project){background:#f1f4f580!important}:root:not(.dark) body .project-case-card:hover,:root:not(.dark) body :where(.problem-option-card,.problem-project-card,.capability-subsection,.capability-detail-panel,.impact-list-project):hover{background:#fafcfcdb!important;box-shadow:0 0 38px #1264e80b!important}@media (max-width: 1023px){:root body #navbar .site-navbar-surface{border-radius:0!important}:root body .project-collection-copy h1{font-size:clamp(2.45rem,6.6vw,3.2rem)}}@media (max-width: 760px){#banner-wrapper:after{bottom:-7rem}:root body .project-discovery-toolbar{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}:root body #sidebar-sticky>:where(widget-layout.card-base,.portfolio-evidence-card){padding-inline:.35rem}}@media (max-width: 640px){:root body .project-collection-intro{padding-top:2.35rem}:root body .project-collection-copy h1{font-size:clamp(2.2rem,10.5vw,2.9rem);line-height:.98}:root body .project-collection-summary{margin-top:1.4rem}:root body .project-case-card:hover,:root body :where(.problem-option-card,.problem-project-card,.capability-subsection,.capability-detail-panel,.impact-list-project):hover{transform:none!important}}@media (prefers-reduced-motion: reduce){#banner-wrapper:after,#main-grid:before{transition:none!important}}:root body #sidebar-sticky .portfolio-evidence-card,:root.dark body #sidebar-sticky .portfolio-evidence-card{border:0!important;border-top:1px solid var(--border-subtle)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}:root body #sidebar-sticky .portfolio-evidence-card:hover{border-top-color:var(--border-default)!important;box-shadow:none!important}:root:not(.dark) body :where(.project-discovery-tab[aria-selected=true],.project-view-tabs button[aria-selected=true],.project-capability-scroll button[aria-pressed=true],.problem-switch-button[aria-pressed=true],.problem-filter-chip[aria-pressed=true],.problem-use-case-chip[aria-pressed=true],.impact-view-button[aria-selected=true],.impact-layout-button[aria-pressed=true],.comparison-mode-switch button[aria-pressed=true]){border-color:#1264e838!important;background:#1264e812!important;box-shadow:inset 0 1px #ffffff7a,0 0 22px #1264e806!important;color:#1264e8!important}:root body #navbar .site-navbar-surface{background:linear-gradient(90deg,transparent,rgba(246,247,245,.58) 5%,rgba(246,247,245,.58) 95%,transparent)!important}:root.dark body #navbar .site-navbar-surface{background:linear-gradient(90deg,transparent,rgba(3,8,14,.64) 5%,rgba(3,8,14,.64) 95%,transparent)!important}:root body :where(.project-impact-shell,.capabilities-shell){border:0!important;background:transparent!important;box-shadow:none!important}:root body .capability-subsection{border:0!important;border-top:1px solid var(--border-subtle)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}:root body .project-view-tabbar{border:0!important;border-top:1px solid var(--border-subtle)!important;border-bottom:1px solid var(--border-subtle)!important;border-radius:0!important;background:color-mix(in srgb,var(--bg-base) 88%,transparent)!important;box-shadow:none!important}:root body :where(.project-view-card,.technical-section,.technical-article-heading){border:0!important;border-top:1px solid var(--border-subtle)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}:root body .project-overview-card{border-color:var(--border-subtle)!important;background:linear-gradient(105deg,color-mix(in srgb,var(--accent-blue) 4%,transparent),transparent 58%),color-mix(in srgb,var(--surface-transparent) 62%,transparent)!important}:root body .project-overview-card:before{width:2px;background:linear-gradient(180deg,var(--accent-cyan),var(--accent-deep) 72%,transparent);opacity:.72}:root body .project-case-card,:root.dark body .project-case-card{transform:none!important;transition:border-color .34s ease,background-color .34s ease,box-shadow .42s ease!important}:root body .project-case-card:hover,:root.dark body .project-case-card:hover{border-color:var(--border-hover)!important;background:var(--surface-hover)!important;box-shadow:0 0 38px #43d7ff0d!important;transform:none!important}:root body .project-card-body{gap:.72rem;padding:1.12rem 1.12rem 1.02rem}:root body .project-card-discovery-panel,:root.dark body .project-card-discovery-panel{position:static!important;visibility:visible!important;max-height:none!important;overflow:visible!important;margin:0 1.12rem 1.12rem!important;padding:.82rem 0 0!important;border:0!important;border-top:1px solid var(--line-divider)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;opacity:1!important;pointer-events:auto!important;transform:none!important}:root body .project-card-discovery-panel h3,:root body .project-card-section h3,:root body .project-card-why h3,:root body .project-card-related h3{color:var(--text-muted);font-family:var(--font-mono);font-size:.6rem;font-weight:560;letter-spacing:.095em}:root body .project-card-discovery-panel p{color:color-mix(in srgb,var(--text-secondary) 92%,var(--text-muted));font-size:.76rem;line-height:1.54}:root body .project-card-why,:root body .project-card-related{position:static!important;max-height:none!important;overflow:visible!important;transform:none!important}:root body .project-card-why p{margin:0;padding:0;border:0;color:color-mix(in srgb,var(--text-secondary) 92%,var(--text-muted));font-size:.78rem;line-height:1.6}:root body .project-card-proof{gap:.32rem;padding:.68rem .72rem;border-color:color-mix(in srgb,var(--border-subtle) 78%,transparent)!important;border-radius:.44rem;background:var(--metric-bg)!important;box-shadow:none!important}:root body .project-card-proof-result strong{color:var(--text-primary);font-size:1.04rem;font-weight:620}:root body .project-card-proof-result span{color:var(--text-secondary);font-weight:560}:root body .project-card-proof>a{position:static;justify-self:end;color:var(--link-default)}:root body :where(.project-industry-badge,.project-status-badge,.project-featured-evidence,.project-capability-list li){border-color:color-mix(in srgb,var(--border-default) 74%,transparent)!important;border-radius:.32rem!important;background:var(--chip-bg)!important;color:var(--text-muted)!important;box-shadow:none!important;transition:border-color .3s ease,background-color .3s ease,color .3s ease!important}:root body :where(.project-industry-badge,.project-status-badge,.project-featured-evidence,.project-capability-list li):hover{border-color:color-mix(in srgb,var(--border-hover) 68%,transparent)!important;background:color-mix(in srgb,var(--accent-cyan) 4%,transparent)!important;color:var(--text-secondary)!important}:root body .project-capability-list .project-capability-more{min-height:1.3rem;padding:0!important;border:0!important;background:transparent!important}:root body .project-capability-more a{color:var(--link-default);font-family:var(--font-mono);font-size:.61rem;font-weight:540;letter-spacing:.025em}:root body :where(.project-industry-badge,.project-status-badge){padding:.17rem .34rem;font-size:.58rem;font-weight:560;letter-spacing:.065em}:root body .project-status-badge:before{width:.3rem;height:.3rem;opacity:.58}:root body .project-featured-evidence{padding:.12rem .32rem;font-size:.59rem;font-weight:540;letter-spacing:.035em}:root body .project-card-media-shell{border-color:color-mix(in srgb,var(--border-default) 78%,transparent);background:var(--bg-deep);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bg-deep) 28%,transparent)}:root.dark body .project-card-media-shell .project-card-image-element{filter:saturate(.94) brightness(.965) contrast(.99)}:root body .project-card-media-shell:after{opacity:.78}:root body .project-card-media:hover .project-card-image-element{transform:scale(1.012)}:root body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link,.project-intelligence-trigger,.project-intelligence-input-row button,.project-intelligence-primary-action,.project-intelligence-local-ai-button){border-color:var(--action-primary-border)!important;background:var(--action-primary-bg)!important;box-shadow:0 0 24px #43d7ff06!important;color:var(--action-primary-text)!important;filter:none!important;transform:none!important}:root body :where(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link,.project-intelligence-trigger,.project-intelligence-input-row button,.project-intelligence-primary-action,.project-intelligence-local-ai-button):hover{border-color:var(--action-primary-border-hover)!important;background:var(--action-primary-bg-hover)!important;box-shadow:0 0 32px #43d7ff0e!important;filter:none!important;transform:none!important}:root body :where(.project-secondary-actions a,.project-evidence a,.project-card-related a,.project-card-proof>a,.project-mobile-quick-links a,.portfolio-evidence-copy>a,.credential-links a,.publication-doi-link,.patent-records a,.tag-toggle,.project-ask-menu summary){color:var(--link-default)!important;text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:left calc(100% - 1px);background-size:0 1px;transition:color .3s ease,background-size .36s cubic-bezier(.16,1,.3,1)!important}:root body :where(.project-secondary-actions a,.project-evidence a,.project-card-related a,.project-card-proof>a,.project-mobile-quick-links a,.portfolio-evidence-copy>a,.credential-links a,.publication-doi-link,.patent-records a,.tag-toggle,.project-ask-menu summary):hover{color:var(--link-hover)!important;background-size:100% 1px}:root body :where(.portfolio-evidence-copy>a,.credential-links a,.publication-doi-link) span[aria-hidden=true]{display:inline-block;transition:transform .32s cubic-bezier(.16,1,.3,1)}:root body :where(.portfolio-evidence-copy>a,.credential-links a,.publication-doi-link):hover span[aria-hidden=true]{transform:translate(2px)}:root body #sidebar-sticky>:where(widget-layout.card-base,.portfolio-evidence-card){padding-top:1.05rem;border-top-color:color-mix(in srgb,var(--border-subtle) 76%,transparent)!important}:root body #sidebar-sticky :where(.portfolio-evidence-eyebrow,.publication-number,.publication-count){color:var(--text-muted)}:root body #sidebar-sticky .portfolio-evidence-card h2{color:color-mix(in srgb,var(--text-primary) 86%,var(--text-secondary));font-size:1.12rem}:root body #sidebar-sticky .portfolio-evidence-card :where(p,.publication-authors){color:color-mix(in srgb,var(--text-secondary) 86%,var(--text-muted))}:root body #sidebar-sticky .impact-mini-preview{border-color:color-mix(in srgb,var(--border-subtle) 72%,transparent);opacity:.82}:root body #sidebar .tag-cloud{gap:.26rem .24rem}:root body #sidebar .tag-cloud a,:root body #sidebar .tag-cloud a:visited,:root.dark body #sidebar .tag-cloud a,:root.dark body #sidebar .tag-cloud a:visited{padding:.14rem .3rem;border-color:color-mix(in srgb,var(--border-subtle) 72%,transparent);border-radius:.28rem;background:transparent;color:var(--text-muted);font-size:.59rem;letter-spacing:.02em}:root body #sidebar .tag-cloud a:hover,:root.dark body #sidebar .tag-cloud a:hover{border-color:color-mix(in srgb,var(--border-hover) 62%,transparent);background:var(--chip-bg);color:var(--text-secondary)}:root body #sidebar .tag-toggle{width:-moz-max-content;width:max-content;min-height:2rem;padding-inline:0;border:0;background-color:transparent;font-size:.66rem;font-weight:560}:root body #navbar nav a:not(.nav-link-active){color:color-mix(in srgb,var(--text-secondary) 92%,var(--text-primary))}:root.dark body #navbar .site-navbar-surface nav a:not(.nav-link-active):not(:hover){color:var(--text-secondary)!important}:root body #navbar nav a.nav-link-active{color:var(--theme-accent-text)}:root.dark body #navbar .site-navbar-surface nav a.nav-link-active{color:var(--theme-accent-text)!important}:root body #navbar .btn-plain:hover{color:var(--text-primary);transform:none}:root body #sidebar>div:first-child>.card-base>a{border-color:color-mix(in srgb,var(--border-default) 86%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-cyan) 4%,transparent),0 0 24px #43d7ff08}:root body #sidebar .profile-name{margin-top:.72rem}:root body #sidebar .profile-underline{width:1rem;margin-top:.42rem;margin-bottom:.56rem;box-shadow:0 0 7px #43d7ff24}:root body #sidebar .profile-bio{color:color-mix(in srgb,var(--text-secondary) 94%,var(--text-primary));line-height:1.62}:root.dark body .project-case-card :where(.project-secondary-actions a,.project-evidence a,.project-card-related a,.project-card-proof>a,.project-mobile-quick-links a,.project-capability-more a,.project-ask-menu summary):not(:hover){color:var(--link-default)!important}:root body #sidebar #categories a>button{padding-left:.625rem!important;border-radius:.38rem;background:transparent!important;color:var(--text-muted)!important;transform:none!important}:root body #sidebar #categories a>button:hover{padding-left:.625rem!important;background:color-mix(in srgb,var(--accent-cyan) 4%,transparent)!important;color:var(--text-secondary)!important}:root body #sidebar #categories a>button>div>div:last-child:not(:first-child){border-color:color-mix(in srgb,var(--border-subtle) 78%,transparent);border-radius:.32rem;background:var(--chip-bg);color:var(--text-muted);font-size:.64rem;font-weight:560}:root body #sidebar .expand-btn button,:root body #sidebar .expand-btn button>div{background:transparent!important;color:var(--link-default)!important;transform:none}@media (max-width: 640px){:root body .project-card-discovery-panel,:root.dark body .project-card-discovery-panel{margin:0 .95rem 1rem!important;padding-top:.78rem!important}:root body .project-card-discovery-panel p{margin-top:.2rem;padding:.38rem 0 .38rem .58rem;border-left:1px solid var(--border-default)}}@media (prefers-reduced-motion: reduce){:root body :where(.project-case-card,.project-card-media-shell:after,.project-card-image-element,.project-primary-action:after,.portfolio-evidence-copy>a span,.credential-links a span,.publication-doi-link span){transition:none!important}}:root:not(.dark){--light-bg: #F5F7F6;--light-bg-warm: #F7F7F3;--light-surface: #F0F4F5;--light-surface-elevated: #EEF3F5;--light-section: #F0F4F5;--light-input: #EDF2F4;--light-metric: #ECF2F5;--light-card: rgba(255, 255, 255, .62);--light-card-hover: rgba(255, 255, 255, .76);--light-accent: #238DBA;--light-accent-hover: #1CA9D6;--light-accent-cyan: var(--light-accent-hover);--light-accent-blue: var(--light-accent);--light-accent-deep: #1C5F86;--light-accent-text: #1C5F86;--light-accent-soft: rgba(35, 141, 186, .07);--light-accent-border: rgba(35, 141, 186, .28);--light-focus-ring: rgba(35, 141, 186, .5);--light-focus-halo: rgba(35, 141, 186, .1);--light-text: #111B24;--light-text-strong: #2A3C4D;--light-text-secondary: #5F7384;--light-text-steel: #4E6A80;--light-text-muted: #71869A;--light-text-subtle: #8598A7;--light-hairline: rgba(50, 85, 110, .09);--light-hairline-strong: rgba(50, 85, 110, .12);--light-shadow: 0 8px 30px rgba(35, 65, 85, .04);--light-button: #24618A;--light-button-hover: #2B76A4;--light-button-border: rgba(20, 60, 90, .34);--light-button-edge: rgba(28, 169, 214, .55);--bg-deep: #E9EFF2;--bg-base: var(--light-bg);--bg-elevated: var(--light-surface-elevated);--bg-soft: var(--light-section);--page-bg: var(--light-bg);--primary: color-mix(in srgb, var(--light-accent) 78%, var(--accent-color));--theme-accent: var(--primary);--accent-hover: color-mix(in srgb, var(--light-accent-hover) 78%, var(--accent-color));--theme-accent-hover: var(--accent-hover);--accent-cyan: var(--light-accent-cyan);--accent-blue: var(--light-accent-blue);--accent-deep: var(--light-accent-deep);--theme-accent-soft: var(--light-accent-soft);--theme-accent-border: var(--light-accent-border);--theme-accent-text: var(--light-accent-text);--title-active: var(--primary);--gold: var(--primary);--text-primary: var(--light-text);--text-secondary: var(--light-text-secondary);--text-muted: var(--light-text-muted);--text-subtle: var(--light-text-subtle);--deep-text: #0B141C;--card-bg: var(--light-card);--surface: var(--card-bg);--surface-transparent: rgba(255, 255, 255, .54);--surface-hover: var(--light-card-hover);--card-bg-hover: var(--surface-hover);--surface-2: var(--light-section);--surface-elevated: var(--light-surface-elevated);--control-bg: var(--light-input);--card-media-bg: #ECEFF0;--float-panel-bg: rgba(246, 248, 248, .97);--metric-bg: var(--light-metric);--chip-bg: transparent;--card-border: rgba(50, 85, 110, .1);--border-soft: rgba(50, 85, 110, .09);--border-subtle: rgba(50, 85, 110, .08);--border-default: rgba(50, 85, 110, .12);--border-strong: rgba(50, 85, 110, .16);--border-hover: var(--light-accent-border);--line-divider: var(--light-hairline);--line-color: var(--light-hairline);--meta-divider: var(--light-text-subtle);--shadow-sm: var(--light-shadow);--shadow-md: var(--light-shadow);--card-shadow: none;--card-shadow-hover: var(--light-shadow);--action-primary-bg: var(--light-button);--action-primary-bg-hover: var(--light-button-hover);--action-primary-border: var(--light-button-border);--action-primary-border-hover: var(--light-button-edge);--action-primary-text: #FFFFFF;--link-default: #2677A9;--link-hover: #0A8FC4;--link-active: #0A7FB0;--link-underline: rgba(38, 119, 169, .3);--selection-bg: rgba(35, 141, 186, .16);--btn-content: var(--theme-accent-text);--btn-regular-bg: rgba(35, 141, 186, .07);--btn-regular-bg-hover: rgba(35, 141, 186, .12);--btn-regular-bg-active: rgba(35, 141, 186, .17);--btn-plain-bg-hover: rgba(35, 141, 186, .06);--btn-plain-bg-active: rgba(35, 141, 186, .1);--btn-card-bg-hover: rgba(35, 141, 186, .06);--btn-card-bg-active: rgba(35, 141, 186, .1);--enter-btn-bg: var(--btn-regular-bg);--enter-btn-bg-hover: var(--btn-regular-bg-hover);--enter-btn-bg-active: var(--btn-regular-bg-active);--toc-badge-bg: var(--btn-regular-bg);--toc-btn-hover: var(--btn-regular-bg-hover);--toc-btn-active: var(--btn-regular-bg-active);--toc-item-active: var(--primary);--inline-code-bg: var(--btn-regular-bg);--inline-code-color: var(--theme-accent-text);--image-edge-overlay: linear-gradient(to bottom, rgba(16, 32, 48, .04), transparent 18%, transparent 80%, rgba(16, 32, 48, .1));--scrollbar-bg: rgba(16, 32, 48, .24);--scrollbar-bg-hover: rgba(16, 32, 48, .36);--scrollbar-bg-active: rgba(16, 32, 48, .48)}:root:not(.dark) body{background-color:var(--page-bg);background-image:radial-gradient(ellipse at 82% 0%,rgba(28,169,214,.07),transparent 34rem),radial-gradient(circle at 6% 40%,rgba(35,141,186,.04),transparent 32rem),linear-gradient(180deg,var(--light-surface) 0%,var(--light-bg) 24rem,var(--light-bg-warm) 72rem,var(--light-bg) 100%);background-attachment:fixed;color:var(--light-text)}:root:not(.dark) body:before{background-image:linear-gradient(rgba(42,83,112,.016) 1px,transparent 1px),linear-gradient(90deg,rgba(42,83,112,.012) 1px,transparent 1px)}:root:not(.dark) #main-grid:before{background:radial-gradient(circle at 64% 2%,rgba(28,169,214,.045),transparent 26rem),linear-gradient(180deg,transparent,rgba(245,247,246,.92) 12rem,transparent 44rem)}:root:not(.dark) ::-moz-selection{background:var(--selection-bg);color:var(--light-text)}:root:not(.dark) ::selection{background:var(--selection-bg);color:var(--light-text)}:root:not(.dark) :where(a,button,input,select,textarea,summary):focus-visible{outline-color:var(--light-focus-ring)}:root:not(.dark) #banner-wrapper{background:#d9e3e9}:root:not(.dark) #banner-wrapper img{filter:hue-rotate(166deg) saturate(.94) brightness(.86) contrast(1.22)}:root:not(.dark) #banner-wrapper:after{--hero-overshoot: 10rem;background:linear-gradient(90deg,rgba(226,236,242,.12),transparent 14%,transparent 86%,rgba(226,236,242,.1)),linear-gradient(180deg,rgba(204,226,240,.12) 0%,rgba(214,231,242,.07) 34%,rgba(232,240,244,.22) calc(100% - var(--hero-overshoot) - 8.5rem),rgba(240,245,246,.62) calc(100% - var(--hero-overshoot) - 4rem),rgba(244,247,246,.9) calc(100% - var(--hero-overshoot) - 1.25rem),var(--page-bg) calc(100% - var(--hero-overshoot)),color-mix(in srgb,var(--page-bg) 100%,transparent) calc(100% - var(--hero-overshoot) + .5rem),color-mix(in srgb,var(--page-bg) 0%,transparent) 100%)}@media (max-width: 760px){:root:not(.dark) #banner-wrapper:after{--hero-overshoot: 7rem}}:root:not(.dark) body #navbar .site-navbar-surface{border-bottom-color:#32556e1a!important;background:linear-gradient(90deg,transparent,rgba(242,245,246,.82) 4%,rgba(242,245,246,.82) 96%,transparent)!important;-webkit-backdrop-filter:blur(14px) saturate(1.02)!important;backdrop-filter:blur(14px) saturate(1.02)!important}:root:not(.dark) body #navbar>div:first-child{background:transparent!important}:root:not(.dark) body #navbar .btn-plain{color:var(--light-text-strong)}:root:not(.dark) body #navbar .btn-plain:hover{background:#238dba0d;color:var(--light-text)}:root:not(.dark) body #navbar nav a:not(.nav-link-active){color:var(--light-text-strong)}:root:not(.dark) body #navbar nav a:hover,:root:not(.dark) body #navbar nav a.nav-link-active{color:var(--light-text)}:root:not(.dark) body #navbar nav a:after{background:var(--light-accent-blue);box-shadow:none}:root:not(.dark) body #navbar nav a svg{color:#34495e66}:root:not(.dark) body #search-bar,:root:not(.dark) body #search-bar-inside{border:1px solid var(--light-hairline-strong)!important;background:#edf2f4eb!important;box-shadow:none!important}:root:not(.dark) body #search-bar:hover,:root:not(.dark) body #search-bar-inside:hover{border-color:#238dba42!important}:root:not(.dark) body #search-bar input,:root:not(.dark) body #search-bar-inside input{color:var(--light-text)}:root:not(.dark) body #search-bar input::-moz-placeholder,:root:not(.dark) body #search-bar-inside input::-moz-placeholder{color:var(--light-text-subtle)}:root:not(.dark) body #search-bar input::placeholder,:root:not(.dark) body #search-bar-inside input::placeholder{color:var(--light-text-subtle)}:root:not(.dark) body #search-bar svg,:root:not(.dark) body #search-bar-inside svg{color:var(--light-text-muted)}:root:not(.dark) body .project-collection-intro{border-bottom-color:var(--light-hairline)}:root:not(.dark) body .project-collection-eyebrow{color:var(--link-default)}:root:not(.dark) body .project-collection-copy h1{color:var(--light-text)}:root:not(.dark) body .project-collection-summary{color:var(--light-text-secondary)}:root:not(.dark) body .project-collection-stats dd{color:var(--light-text)}:root:not(.dark) body .project-collection-stats dt{color:var(--light-text-muted)}:root:not(.dark) body .project-collection-stats>div:nth-child(odd){border-right-color:#32556e14!important}:root:not(.dark) body .project-collection-stats>div:nth-child(-n+2){border-bottom-color:#32556e14!important}:root:not(.dark) body .project-discovery-toolbar{border-color:#32556e0f!important;background:#ffffff42!important;box-shadow:none!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}:root:not(.dark) body .project-discovery-toolbar.is-stuck{border-color:var(--light-hairline)!important;background:#f5f7f6e6!important;box-shadow:0 10px 30px -18px #23415529!important}:root:not(.dark) body .project-discovery-tabs{border-color:var(--light-hairline);background:#edf2f499;box-shadow:none}:root:not(.dark) body .project-discovery-tab{color:var(--light-text-secondary)}:root:not(.dark) body .project-discovery-tab:hover{background:#238dba0d;color:var(--light-text)}:root:not(.dark) body .project-discovery-tab[aria-selected=true]{border-color:#238dba29!important;background:#238dba12!important;box-shadow:none!important;color:var(--light-accent-text)!important}:root:not(.dark) body :is(.project-core-filters select,.project-main-search input,.problem-search-control input,.capability-control input,.capability-control select){border-color:var(--light-hairline-strong);background:var(--light-input);color:var(--light-text);box-shadow:none}:root:not(.dark) body :is(.project-core-filters select,.project-main-search input,.problem-search-control input,.capability-control input,.capability-control select):hover{border-color:#238dba47}:root:not(.dark) body :is(.project-core-filters select,.project-main-search input,.problem-search-control input,.capability-control input,.capability-control select):focus-visible{border-color:var(--light-focus-ring);box-shadow:0 0 0 3px var(--light-focus-halo)}:root:not(.dark) body :where(input,select,textarea)::-moz-placeholder{color:var(--light-text-subtle)}:root:not(.dark) body :where(input,select,textarea)::placeholder{color:var(--light-text-subtle)}:root:not(.dark) body .project-core-filters label,:root:not(.dark) body .project-quick-label{color:var(--light-text-muted)}:root:not(.dark) body .project-main-search kbd{border-color:var(--light-hairline);color:var(--light-text-subtle)}:root:not(.dark) body .project-capability-quick-row{border-top-color:var(--light-hairline)}:root:not(.dark) body .project-capability-scroll button{border-color:#32556e1f;background:transparent;color:var(--light-text-steel)}:root:not(.dark) body .project-capability-scroll button small{color:var(--light-text-subtle)}:root:not(.dark) body .project-capability-scroll button:hover{border-color:#1ca9d652;background:#1ca9d60d;color:var(--light-accent-text);transform:none}:root:not(.dark) body .project-capability-scroll button[aria-pressed=true]{border-color:#1ca9d657!important;background:#1ca9d61a!important;box-shadow:none!important;color:var(--light-accent-text)!important}:root:not(.dark) body .project-capability-scroll button[aria-pressed=true] small{color:var(--link-default)!important}:root:not(.dark) body .project-mobile-filter-button{border-color:var(--light-hairline-strong);background:var(--light-input);color:var(--light-text)}:root:not(.dark) body .project-filter-drawer{border-color:var(--light-hairline-strong);background:#f4f7f7fa;box-shadow:0 -12px 34px -20px #2341554d}:root:not(.dark) body .project-search-suggestions{border-color:var(--light-hairline-strong);background:#f4f7f7fa;box-shadow:0 14px 34px -18px #23415547}:root:not(.dark) body .project-result-summary{border-bottom-color:var(--light-hairline);color:var(--light-text-muted)}:root:not(.dark) body .project-result-summary [data-project-result-count]{color:var(--light-text-steel)}:root:not(.dark) body .project-case-card,:root:not(.dark) body :is(.problem-option-card,.problem-project-card,.project-recently-viewed,.project-comparison-bar,.capability-subsection,.capability-detail-panel,.comparison-selector,.comparison-results,.impact-list-project){border-color:#32556e17!important;background:var(--light-card)!important;box-shadow:none!important}:root:not(.dark) body .project-case-card:hover,:root:not(.dark) body :is(.problem-option-card,.problem-project-card,.capability-subsection,.capability-detail-panel,.impact-list-project):hover{border-color:#1ca9d647!important;background:var(--light-card-hover)!important;box-shadow:var(--light-shadow)!important;transform:none!important}:root:not(.dark) body .project-case-card:has(:focus-visible){border-color:#1ca9d680!important;box-shadow:0 0 0 3px #1ca9d629!important}:root:not(.dark) body .project-card-media-shell{border-color:#32556e1a;background:var(--card-media-bg);box-shadow:inset 0 0 0 1px #fff6,inset 0 1px 2px #1020300a}:root:not(.dark) body .project-card-media,:root:not(.dark) body .project-card-media[data-image-fit=contain],:root:not(.dark) body .project-card-media-generated{background:var(--card-media-bg)}:root:not(.dark) body .project-card-media-shell:after{opacity:.6}:root:not(.dark) body .project-card-media-shell:hover:after,:root:not(.dark) body .project-card-media-shell:focus-within:after{opacity:.72}:root:not(.dark) body .project-card-architecture-label{border-color:#32556e1c;background:#f4f7f7eb;color:var(--light-text-steel)}:root:not(.dark) body .project-thumbnail-actions a{border-color:#32556e1f;background:#f4f7f7f0;color:var(--light-text)}:root:not(.dark) body .project-card-body{border-top-color:var(--light-hairline)}:root:not(.dark) body .project-card-title a{color:var(--light-text)}:root:not(.dark) body .project-card-title a:hover{color:var(--light-accent-text)}:root:not(.dark) body .project-card-summary{color:var(--light-text-secondary)}:root:not(.dark) body .project-card-meta,:root:not(.dark) body .project-maturity-line,:root:not(.dark) body .project-secondary-separator{color:var(--light-text-muted)}:root:not(.dark) body :is(.project-industry-badge,.project-status-badge,.project-featured-evidence){border-color:#32556e1c!important;background:#ecf2f5b8!important;color:var(--light-text-steel)!important}:root:not(.dark) body :is(.project-industry-badge,.project-status-badge,.project-featured-evidence):hover{border-color:#1ca9d64d!important;background:#ecf2f5eb!important;color:var(--light-accent-text)!important}:root:not(.dark) body .project-capability-list li{border-color:#32556e1f!important;border-radius:.28rem!important;background:transparent!important;color:var(--light-text-steel)!important}:root:not(.dark) body .project-capability-list li:hover{border-color:#1ca9d652!important;background:#1ca9d60d!important;color:var(--light-accent-text)!important}:root:not(.dark) body .project-capability-list .project-capability-more{border:0!important;background:transparent!important}:root:not(.dark) body .project-capability-more a{color:var(--link-default)}:root:not(.dark) body .project-card-section h3,:root:not(.dark) body .project-card-discovery-panel h3,:root:not(.dark) body .project-card-why h3,:root:not(.dark) body .project-card-related h3{color:var(--light-text-muted)}:root:not(.dark) body .project-card-proof,:root:not(.dark) body .problem-match-summary{border-color:#32556e12!important;border-radius:.36rem;background:var(--light-metric)!important;box-shadow:none!important}:root:not(.dark) body .project-card-proof-result strong{color:var(--light-text);font-weight:640}:root:not(.dark) body .project-card-proof-result span,:root:not(.dark) body .project-card-proof-context>span:first-child{color:var(--light-text-secondary)}:root:not(.dark) body .project-card-proof-context{color:var(--light-text-muted)}:root:not(.dark) body .project-card-proof>a{color:var(--link-default)!important}:root:not(.dark) body .project-compare-control{color:var(--light-text-secondary)}:root:not(.dark) body .project-compare-control input{border-color:#32556e47;background:var(--light-card-hover);box-shadow:none}:root:not(.dark) body .project-compare-control input:hover{border-color:#1ca9d680}:root:not(.dark) body .project-compare-control input:checked{border-color:var(--light-accent-cyan);background:var(--light-accent-cyan);box-shadow:none}:root:not(.dark) body .project-compare-control input:before{border-color:#fff}:root:not(.dark) body .project-compare-control input:focus-visible{outline:2px solid var(--light-focus-ring);outline-offset:2px}:root:not(.dark) body :is(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link){border-color:var(--light-button-border)!important;background:var(--light-button)!important;box-shadow:none!important;color:#fff!important}:root:not(.dark) body :is(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link):hover{border-color:var(--light-button-edge)!important;background:var(--light-button-hover)!important;box-shadow:0 0 0 1px #1ca9d647!important;color:#fff!important}:root:not(.dark) body .project-case-card .project-primary-action:hover:after{transform:translate(2px,-1px)}:root:not(.dark) body .project-card-actions{border-top-color:var(--light-hairline)}:root:not(.dark) body .project-card-discovery-panel{border-top-color:var(--light-hairline)!important}:root:not(.dark) body .project-card-discovery-panel p{color:var(--light-text-secondary)}:root:not(.dark) body .project-ask-menu button{background:#ecf2f5cc;color:var(--light-text-steel)}:root:not(.dark) body .project-ask-menu button:hover{background:#1ca9d614;color:var(--light-accent-text)}:root:not(.dark) body .project-intelligence-trigger{border-color:#32556e1f!important;background:#f4f7f7f5!important;box-shadow:0 12px 30px -16px #2341554d!important;color:var(--light-accent-text)!important}:root:not(.dark) body .project-intelligence-trigger:hover{border-color:#1ca9d666!important;background:var(--light-input)!important}:root:not(.dark) body #sidebar>div:first-child>.card-base>a{border-color:#32556e1f!important;box-shadow:0 10px 28px -14px #2341552e!important}:root:not(.dark) body #sidebar>div:first-child>.card-base>a:hover{border-color:#1ca9d65c!important;box-shadow:0 10px 28px -12px #23415533,0 0 0 1px #1ca9d61f!important}:root:not(.dark) body #sidebar .profile-name{color:var(--light-text)}:root:not(.dark) body #sidebar .profile-underline{background:var(--light-accent-blue);box-shadow:none}:root:not(.dark) body #sidebar .profile-bio{color:var(--light-text-secondary)}:root:not(.dark) body #sidebar .social-links a{color:var(--light-text-muted)}:root:not(.dark) body #sidebar .social-links a:hover{border-color:#1ca9d64d;background:#1ca9d60f;color:var(--light-accent-blue);box-shadow:none}:root:not(.dark) body #sidebar-sticky>:is(widget-layout.card-base,.portfolio-evidence-card),:root:not(.dark) body #sidebar-sticky .portfolio-evidence-card{border-top-color:var(--light-hairline)!important}:root:not(.dark) body #sidebar-sticky>:is(widget-layout.card-base,.portfolio-evidence-card):hover,:root:not(.dark) body #sidebar-sticky .portfolio-evidence-card:hover{border-top-color:var(--light-hairline-strong)!important}:root:not(.dark) body #sidebar widget-layout.card-base>div:first-child{color:var(--light-accent-text)}:root:not(.dark) body #sidebar widget-layout.card-base>div:first-child:before{background:var(--light-accent-cyan);box-shadow:none;opacity:.8}:root:not(.dark) body #sidebar #categories a>button{color:var(--light-text-steel)!important}:root:not(.dark) body #sidebar #categories a>button:hover{background:#238dba0d!important;color:var(--light-text)!important}:root:not(.dark) body #sidebar #categories a>button>div>div:last-child:not(:first-child){border-color:#32556e1a;background:#238dba0f;color:var(--link-default)}:root:not(.dark) body #sidebar .expand-btn button,:root:not(.dark) body #sidebar .expand-btn button>div,:root:not(.dark) body #sidebar .tag-toggle{color:var(--link-default)!important}:root:not(.dark) body #sidebar .tag-cloud a,:root:not(.dark) body #sidebar .tag-cloud a:visited{border-color:#32556e1a;border-radius:.22rem;background:transparent;color:var(--light-text-steel)}:root:not(.dark) body #sidebar .tag-cloud a:hover{border-color:#1ca9d64d;background:#1ca9d60f;color:var(--light-accent-text)}:root:not(.dark) body #sidebar-sticky .portfolio-evidence-eyebrow{color:var(--link-default)}:root:not(.dark) body #sidebar-sticky .portfolio-evidence-card h2,:root:not(.dark) body .publication-record h3,:root:not(.dark) body .publication-authors strong,:root:not(.dark) body .patent-records h3{color:var(--light-text)}:root:not(.dark) body #sidebar-sticky .portfolio-evidence-card :is(p,.publication-authors){color:var(--light-text-secondary)}:root:not(.dark) body .publication-citation,:root:not(.dark) body .patent-records li>span{color:var(--light-text-muted)}:root:not(.dark) body #sidebar-sticky .publication-number{color:var(--link-default)}:root:not(.dark) body #sidebar-sticky :is(.publication-record-meta time,.publication-count){color:var(--light-text-subtle)}:root:not(.dark) body .publication-indicators li{border-color:#32556e14;background:#ecf2f5cc;color:var(--light-text-steel)}:root:not(.dark) body .publication-record,:root:not(.dark) body .patent-records{border-top-color:var(--light-hairline)}:root:not(.dark) body #sidebar-sticky .impact-mini-preview{border-color:var(--light-hairline);background:radial-gradient(circle at center,rgba(28,169,214,.06),transparent 68%);opacity:1}:root:not(.dark) body .impact-mini-preview:before,:root:not(.dark) body .impact-mini-preview:after{background:#32556e24}:root:not(.dark) body .impact-mini-core,:root:not(.dark) body .impact-mini-node{border-color:#32556e1f;background:#fffc;color:var(--light-text-strong)}:root:not(.dark) body .impact-mini-core{border-color:#1ca9d66b;color:var(--light-accent-blue)}:root:not(.dark) body .impact-mini-node small{color:var(--link-default)}:root:not(.dark) body .back-to-top-btn{border:1px solid rgba(50,85,110,.12);color:var(--light-accent-deep);box-shadow:0 10px 28px -14px #23415538}:root:not(.dark) body .back-to-top-btn .btn-card{background:#f4f7f7f0}:root:not(.dark) body .back-to-top-btn .btn-card:hover{background:var(--light-input)}:root:not(.dark) body .footer>div:first-child{-o-border-image:linear-gradient(90deg,transparent,rgba(50,85,110,.12),transparent) 1!important;border-image:linear-gradient(90deg,transparent,rgba(50,85,110,.12),transparent) 1!important}:root:not(.dark) body .footer>div:last-of-type{color:var(--light-text-muted)}:root:not(.dark) body .footer a{color:var(--link-default)}:root:not(.dark) body .float-panel{border-color:var(--light-hairline-strong);background:var(--float-panel-bg);box-shadow:0 18px 44px -22px #23415547}@media (max-width: 640px){:root:not(.dark) body{background-image:radial-gradient(circle at 92% 4%,rgba(28,169,214,.06),transparent 18rem),linear-gradient(180deg,var(--light-surface),var(--light-bg) 18rem);background-attachment:scroll}}:root{--overlay-navy: rgba(3, 8, 14, .86);--overlay-navy-strong: rgba(3, 8, 14, .9);--overlay-border: rgba(67, 215, 255, .14);--overlay-text: #F4F8FB;--overlay-text-soft: #C9D6E1;--overlay-label: #43D7FF;--overlay-link: #8FD3EE;--overlay-link-hover: #BFEAFB;--focus-ring: rgba(67, 215, 255, .5)}html:root.dark{--text-secondary: #9AAFC0;--text-muted: #6C849A;--text-subtle: #5E778C;--meta-divider: #5E788D;--link-default: #8AA6BC;--focus-ring: rgba(67, 215, 255, .5)}html:root:not(.dark){--focus-ring: var(--light-focus-ring);--overlay-border: rgba(67, 215, 255, .12)}:root body .project-card-hover-content{box-sizing:border-box;padding:.78rem .86rem .84rem;border:1px solid var(--overlay-border);border-radius:.5rem;background:linear-gradient(160deg,var(--overlay-navy),var(--overlay-navy-strong));box-shadow:none}:root body .project-card-hover-content .project-card-why h3,:root body .project-card-hover-content .project-card-related h3{color:var(--overlay-label)!important}:root body .project-card-hover-content .project-card-why p{color:var(--overlay-text-soft)!important}:root body .project-card-hover-content .project-card-related a{color:var(--overlay-link)!important;text-decoration-color:#8fd3ee66}:root body .project-card-hover-content .project-card-related a:hover{color:var(--overlay-link-hover)!important}:root body .project-card-hover-content .project-card-related a:focus-visible{outline-color:var(--overlay-label)}:root body :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:var(--focus-ring)}:root:not(.dark) body{background-image:radial-gradient(ellipse at 82% 0%,rgba(35,141,186,.06),transparent 34rem),radial-gradient(circle at 6% 40%,rgba(35,141,186,.035),transparent 32rem),linear-gradient(180deg,var(--light-surface) 0%,var(--light-bg) 24rem,var(--light-bg-warm) 72rem,var(--light-bg) 100%)}:root:not(.dark) #banner-wrapper img{filter:hue-rotate(166deg) saturate(1.06) brightness(.76) contrast(1.34)}:root:not(.dark) #banner-wrapper:after{background:linear-gradient(90deg,rgba(226,236,242,.08),transparent 12%,transparent 88%,rgba(226,236,242,.06)),linear-gradient(180deg,rgba(204,226,240,.06) 0%,rgba(214,231,242,.03) 40%,rgba(232,240,244,.1) calc(100% - var(--hero-overshoot) - 7rem),rgba(240,245,246,.42) calc(100% - var(--hero-overshoot) - 3.25rem),rgba(244,247,246,.86) calc(100% - var(--hero-overshoot) - 1rem),var(--page-bg) calc(100% - var(--hero-overshoot)),color-mix(in srgb,var(--page-bg) 100%,transparent) calc(100% - var(--hero-overshoot) + .5rem),color-mix(in srgb,var(--page-bg) 0%,transparent) 100%)}:root:not(.dark) #main-grid:before{background:radial-gradient(circle at 64% 2%,rgba(35,141,186,.035),transparent 26rem),linear-gradient(180deg,transparent,rgba(245,247,246,.55) 12rem,transparent 40rem)}:root:not(.dark) body #navbar .site-navbar-surface{border-bottom-color:var(--light-hairline)!important;background:linear-gradient(90deg,transparent,rgba(243,246,246,.82) 4%,rgba(243,246,246,.82) 96%,transparent)!important}:root:not(.dark) body #navbar nav a:after{background:var(--light-accent)}:root:not(.dark) body #navbar nav a.nav-link-active:after{background:linear-gradient(90deg,var(--light-accent),var(--light-accent-hover))}:root:not(.dark) body .project-case-card,:root:not(.dark) body :is(.problem-option-card,.problem-project-card,.project-recently-viewed,.project-comparison-bar,.capability-subsection,.capability-detail-panel,.comparison-selector,.comparison-results,.impact-list-project){border-color:var(--light-hairline)!important;background:var(--light-card)!important}:root:not(.dark) body .project-case-card:hover{border-color:var(--light-accent-border)!important;background:var(--light-card-hover)!important;box-shadow:var(--light-shadow)!important}:root:not(.dark) body :is(.project-industry-badge,.project-status-badge,.project-featured-evidence){border-color:var(--light-hairline-strong)!important;background:#ecf2f599!important;color:var(--light-text-steel)!important}:root:not(.dark) body .project-capability-list li,:root:not(.dark) body .project-capability-scroll button{border-color:var(--light-hairline-strong)!important;background:transparent!important;color:var(--light-text-steel)!important}:root:not(.dark) body .project-capability-list li:hover,:root:not(.dark) body .project-capability-scroll button:hover{border-color:var(--light-accent-border)!important;background:var(--light-accent-soft)!important;color:var(--light-accent-text)!important}:root:not(.dark) body :is(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link){border-color:var(--light-button-border)!important;background:var(--light-button)!important;box-shadow:0 1px 2px #142d4114!important;color:#fff!important}:root:not(.dark) body :is(.project-case-card .project-primary-action,.project-thumbnail-actions a:first-child,.problem-project-actions .btn-regular,[data-view-projects],[data-project-compare-submit]:not([aria-disabled=true]),.comparison-submit:not(:disabled),.capability-mobile-project .btn-regular,.impact-apply-filters,.impact-project-link):hover{border-color:var(--light-button-edge)!important;background:var(--light-button-hover)!important;box-shadow:0 0 0 1px #1ca9d638,0 1px 2px #142d4114!important}:root:not(.dark) body #search-bar,:root:not(.dark) body #search-bar-inside{border-color:var(--light-hairline-strong)!important;background:#edf2f4e6!important}:root:not(.dark) body #search-bar:focus-within,:root:not(.dark) body #search-bar-inside:focus-within{border-color:var(--light-focus-ring)!important;box-shadow:0 0 0 3px var(--light-focus-halo)!important}:root:not(.dark) body .project-discovery-tab[aria-selected=true]{border-color:var(--light-accent-border)!important;background:var(--light-accent-soft)!important;color:var(--light-accent-text)!important}:root:not(.dark) body .project-card-meta,:root:not(.dark) body .project-maturity-line,:root:not(.dark) body .project-secondary-separator,:root:not(.dark) body .project-collection-eyebrow{color:var(--light-text-steel)}:root:not(.dark) body .project-card-summary,:root:not(.dark) body .project-collection-summary,:root:not(.dark) body #sidebar .profile-bio{color:var(--light-text-secondary)}:root:not(.dark) body .project-compare-control input:checked{border-color:var(--light-accent);background:var(--light-accent)}:root:not(.dark) body #sidebar>div:first-child>.card-base>a{border-color:var(--light-hairline-strong)!important;box-shadow:var(--light-shadow)!important}:root:not(.dark) body .project-intelligence-trigger,:root:not(.dark) body .back-to-top-btn,:root:not(.dark) body .float-panel{box-shadow:var(--light-shadow)!important}:root:not(.dark) body .project-intelligence-trigger{border-color:var(--light-hairline-strong)!important;background:#f4f7f7f5!important;color:var(--light-accent-text)!important}:root.dark body .project-card-meta,:root.dark body .project-maturity-line,:root.dark body .project-card-proof-context{color:var(--text-muted)}:root.dark body .project-card-summary,:root.dark body .project-collection-summary,:root.dark body #sidebar .profile-bio,:root.dark body .project-card-why-disclosure-body p{color:var(--text-secondary)}:root.dark body .project-card-hover-content{background:linear-gradient(160deg,#03080ed1,#040b13e6)}.enable-banner.is-home #banner-wrapper{height:var(--banner-height-home);--tw-translate-y: var(--banner-height-extend);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.enable-banner #banner-wrapper{height:var(--banner-height-home)}.enable-banner.is-home #banner{height:var(--banner-height-home);--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.enable-banner #banner{height:var(--banner-height-home);--tw-translate-y: var(--bannerOffset);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.enable-banner.is-home #main-grid{--tw-translate-y: var(--banner-height-extend);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.enable-banner #top-row{height:calc(var(--banner-height-home) - 4.5rem);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.enable-banner.is-home #sidebar-sticky{top:calc(1rem - var(--banner-height-extend))}.navbar-hidden{--tw-translate-y: -4rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0}@media (min-width: 1024px){.lg\:is-home.enable-banner #banner-wrapper{height:var(--banner-height-home);--tw-translate-y: var(--banner-height-extend);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:is-home.enable-banner #banner{height:var(--banner-height-home);--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:is-home.enable-banner #main-grid{--tw-translate-y: var(--banner-height-extend);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.lg\:is-home.enable-banner #sidebar-sticky{top:calc(1rem - var(--banner-height-extend))}}.project-case-card[data-astro-cid-iyiqi2so]{display:flex;position:relative;min-width:0;height:100%;flex-direction:column;overflow:hidden;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-card);box-shadow:var(--card-shadow);-webkit-backdrop-filter:none;backdrop-filter:none;--project-accent: var(--primary);transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .16s ease,box-shadow .16s ease}.project-card-media-shell[data-astro-cid-iyiqi2so]{position:relative;width:calc(100% - 1rem);aspect-ratio:16 / 9;margin:.5rem auto 0;padding:0;border:1px solid var(--border-subtle);border-radius:calc(var(--radius-card) - .3rem);background:var(--card-media-bg);overflow:hidden}.project-card-media[data-astro-cid-iyiqi2so]{display:grid;position:relative;width:100%;height:100%;aspect-ratio:16 / 9;place-items:center;overflow:hidden;margin:0;background:var(--card-media-bg);border:0;border-radius:inherit}.project-thumbnail-actions[data-astro-cid-iyiqi2so]{display:flex;position:absolute;z-index:4;right:.55rem;bottom:.55rem;left:.55rem;visibility:hidden;align-items:center;justify-content:center;gap:.38rem;opacity:0;pointer-events:none;transition:opacity .14s ease}.project-thumbnail-actions[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]{display:inline-flex;min-height:2rem;align-items:center;padding:.34rem .55rem;border:1px solid color-mix(in srgb,var(--card-border) 72%,var(--text-primary));border-radius:.45rem;background:color-mix(in srgb,var(--card-bg) 94%,transparent);color:var(--text-primary);font-size:.68rem;font-weight:750;text-decoration:none}.project-card-media-shell[data-astro-cid-iyiqi2so]:after{position:absolute;inset:0;background:var(--image-edge-overlay);content:"";opacity:.78;pointer-events:none;transition:opacity .36s ease}.project-card-image[data-astro-cid-iyiqi2so]{width:100%;height:100%}.project-card-media[data-astro-cid-iyiqi2so] .project-card-image-element{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .22s cubic-bezier(.22,1,.36,1),filter .22s ease}.project-card-media[data-astro-cid-iyiqi2so][data-image-fit=contain]{background:color-mix(in srgb,var(--card-bg) 92%,var(--primary))}.project-card-media[data-astro-cid-iyiqi2so][data-image-fit=contain] .project-card-image-element{box-sizing:border-box;-o-object-fit:contain;object-fit:contain;padding:clamp(1.1rem,2.6vw,1.6rem)}.project-card-media-generated[data-astro-cid-iyiqi2so]{background:color-mix(in srgb,var(--card-bg) 96%,var(--primary))}.project-card-architecture-label[data-astro-cid-iyiqi2so]{display:inline-flex;position:absolute;right:.45rem;bottom:.4rem;align-items:center;padding:.2rem .42rem;border:1px solid color-mix(in srgb,var(--card-border) 82%,transparent);border-radius:999px;background:color-mix(in srgb,var(--card-bg) 94%,transparent);color:var(--text-secondary);font-size:.62rem;font-weight:700;letter-spacing:.025em;line-height:1.2;pointer-events:none}.project-card-body[data-astro-cid-iyiqi2so]{display:flex;min-width:0;flex:1;flex-direction:column;gap:.62rem;padding:1rem 1.05rem 1.05rem;border-top:1px solid color-mix(in srgb,var(--project-accent) 34%,var(--border-subtle))}.project-card-header[data-astro-cid-iyiqi2so],.project-card-section[data-astro-cid-iyiqi2so]{min-width:0}.project-card-kicker[data-astro-cid-iyiqi2so]{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.38rem}.project-card-kicker-actions[data-astro-cid-iyiqi2so]{display:flex;flex:0 0 auto;align-items:center;gap:.4rem}.project-industry-badge[data-astro-cid-iyiqi2so]{display:inline-flex;align-items:center;padding:.22rem .44rem;border:1px solid color-mix(in srgb,var(--project-accent) 42%,var(--card-border));border-radius:.34rem;background:var(--chip-bg);color:var(--text-muted);font-size:.62rem;font-weight:750;line-height:1.2;text-transform:uppercase}.project-compare-control[data-astro-cid-iyiqi2so]{display:inline-flex;position:relative;z-index:9;min-height:1.7rem;align-items:center;gap:.28rem;color:var(--text-secondary);font-size:.66rem;font-weight:700;cursor:pointer;pointer-events:auto}.project-compare-control[data-astro-cid-iyiqi2so] input[data-astro-cid-iyiqi2so]{display:grid;width:1rem;height:1rem;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;place-content:center;border:1px solid var(--border-default);border-radius:.2rem;background:color-mix(in srgb,var(--control-bg) 78%,transparent);box-shadow:inset 0 1px color-mix(in srgb,var(--text-primary) 3%,transparent);cursor:pointer;transition:border-color .28s ease,background-color .28s ease,box-shadow .32s ease}.project-compare-control[data-astro-cid-iyiqi2so] input[data-astro-cid-iyiqi2so]:before{width:.47rem;height:.26rem;border-bottom:1.5px solid var(--text-primary);border-left:1.5px solid var(--text-primary);content:"";transform:rotate(-45deg) scale(0);transform-origin:center;transition:transform .22s cubic-bezier(.16,1,.3,1)}.project-compare-control[data-astro-cid-iyiqi2so] input[data-astro-cid-iyiqi2so]:checked{border-color:var(--action-primary-border-hover);background:color-mix(in srgb,var(--accent-deep) 72%,var(--bg-elevated));box-shadow:0 0 16px color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.project-compare-control[data-astro-cid-iyiqi2so] input[data-astro-cid-iyiqi2so]:checked:before{transform:rotate(-45deg) scale(1)}.project-compare-control[data-astro-cid-iyiqi2so] input[data-astro-cid-iyiqi2so]:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-cyan) 48%,transparent);outline-offset:2px}.project-card-meta[data-astro-cid-iyiqi2so]{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;color:var(--text-muted);font-family:var(--font-body);font-size:.71rem;font-weight:600;line-height:1.35;letter-spacing:.045em;text-transform:uppercase}.project-status-badge[data-astro-cid-iyiqi2so]{display:inline-flex;flex:0 0 auto;align-items:center;gap:.38rem;max-width:48%;padding:.24rem .46rem;border:1px solid color-mix(in srgb,var(--project-accent) 42%,var(--card-border));border-radius:999px;background:color-mix(in srgb,var(--project-accent) 12%,var(--card-bg));color:color-mix(in srgb,var(--project-accent) 82%,var(--text-primary));font-size:.65rem;font-weight:750;line-height:1.2;text-align:right;text-transform:uppercase}.project-status-badge[data-astro-cid-iyiqi2so]:before{content:"";width:.42rem;height:.42rem;flex:0 0 auto;border:1px solid currentColor;border-radius:50%;background:currentColor}.project-card-title[data-astro-cid-iyiqi2so]{margin:0;font-size:clamp(1.25rem,2vw,1.55rem);line-height:1.08;letter-spacing:-.024em}.project-card-title[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]{display:-webkit-box;overflow:hidden;color:var(--text-primary);text-decoration:none;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.project-card-title[data-astro-cid-iyiqi2so].has-short-title a[data-astro-cid-iyiqi2so]{-webkit-line-clamp:2}.project-card-title[data-astro-cid-iyiqi2so].has-long-title{font-size:clamp(1.15rem,1.65vw,1.38rem);line-height:1.14}.project-card-title[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]:hover{color:var(--primary)}.project-card-summary[data-astro-cid-iyiqi2so]{display:-webkit-box;overflow:hidden;margin:0;color:var(--text-secondary);font-size:.92rem;line-height:1.58;-webkit-box-orient:vertical;-webkit-line-clamp:2}.project-maturity-line[data-astro-cid-iyiqi2so]{display:flex;min-height:1.6rem;flex-wrap:wrap;align-items:center;gap:.4rem;color:var(--text-muted);font-size:.72rem;font-weight:650;line-height:1.35}.project-featured-evidence[data-astro-cid-iyiqi2so]{display:inline-flex;align-items:center;padding:.18rem .42rem;border:1px solid color-mix(in srgb,var(--project-accent) 42%,var(--card-border));border-radius:.32rem;background:var(--chip-bg);color:var(--text-muted);font-size:.67rem;font-weight:750;text-decoration:none}.project-mobile-quick-links[data-astro-cid-iyiqi2so]{display:none}.project-card-proof[data-astro-cid-iyiqi2so]{display:grid;gap:.3rem;padding:.68rem .75rem;border:1px solid var(--border-subtle);border-radius:.46rem;background:var(--metric-bg)}.project-card-proof-result[data-astro-cid-iyiqi2so],.project-card-proof-context[data-astro-cid-iyiqi2so]{margin:0}.project-card-proof-result[data-astro-cid-iyiqi2so]{display:flex;min-width:0;flex-wrap:wrap;align-items:baseline;gap:.22rem .48rem;color:var(--text-primary);line-height:1.25}.project-card-proof-result[data-astro-cid-iyiqi2so] strong[data-astro-cid-iyiqi2so]{color:color-mix(in srgb,var(--project-accent) 85%,var(--text-primary));font-family:var(--font-body);font-size:1rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.015em}.project-card-proof-result[data-astro-cid-iyiqi2so] span[data-astro-cid-iyiqi2so]{font-size:.75rem;font-weight:600}.project-card-proof-context[data-astro-cid-iyiqi2so]{display:flex;min-width:0;flex-wrap:wrap;gap:.18rem .36rem;color:var(--text-muted);font-size:.67rem;line-height:1.4}.project-card-proof-context[data-astro-cid-iyiqi2so]>span[data-astro-cid-iyiqi2so]:first-child{color:var(--text-secondary);font-weight:750}.project-card-proof[data-astro-cid-iyiqi2so]>a[data-astro-cid-iyiqi2so]{position:static;justify-self:end;color:var(--link-default);font-size:.65rem;font-weight:750;text-decoration:none}.project-card-proof[data-astro-cid-iyiqi2so]>a[data-astro-cid-iyiqi2so]:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 52%,transparent);outline-offset:2px}.project-card-discovery-panel[data-astro-cid-iyiqi2so]{display:grid;position:static;visibility:visible;max-height:none;overflow:visible;gap:.55rem;margin:0 1.05rem 1.05rem;padding:.78rem 0 0;border:0;border-top:1px solid var(--line-divider);border-radius:0;background:transparent;box-shadow:none;opacity:1;pointer-events:auto;transform:none}.project-card-discovery-panel[data-astro-cid-iyiqi2so] h3[data-astro-cid-iyiqi2so]{margin:0 0 .2rem;color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase}.project-card-discovery-panel[data-astro-cid-iyiqi2so] p[data-astro-cid-iyiqi2so]{margin:0;color:var(--text-secondary);font-size:.77rem;line-height:1.4}.project-detail-stage[data-astro-cid-iyiqi2so]{display:grid;min-width:0;min-height:0;flex:1 1 auto}.project-detail-stage[data-astro-cid-iyiqi2so]>[data-astro-cid-iyiqi2so]{grid-area:1 / 1;min-width:0}.project-card-details-normal[data-astro-cid-iyiqi2so],.project-card-details-hover[data-astro-cid-iyiqi2so]{display:flex;flex-direction:column;justify-content:space-evenly;gap:inherit}.project-card-details-normal[data-astro-cid-iyiqi2so]{transition:opacity .16s ease,transform .2s ease,visibility 0s linear 0s}.project-card-details-hover[data-astro-cid-iyiqi2so]{visibility:hidden;opacity:0;pointer-events:none;transform:translateY(5px);transition:opacity .24s ease,transform .28s cubic-bezier(.16,1,.3,1),visibility 0s linear .24s}.project-case-card[data-astro-cid-iyiqi2so][data-detail-open] .project-card-details-normal[data-astro-cid-iyiqi2so]{visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-3px);transition:opacity .16s ease,transform .2s ease,visibility 0s linear .16s}.project-case-card[data-astro-cid-iyiqi2so][data-detail-open] .project-card-details-hover[data-astro-cid-iyiqi2so]{visibility:visible;opacity:1;pointer-events:auto;transform:none;transition:opacity .26s ease .16s,transform .3s cubic-bezier(.16,1,.3,1) .16s,visibility 0s linear .16s}.project-card-why[data-astro-cid-iyiqi2so],.project-card-related[data-astro-cid-iyiqi2so]{display:block;position:static;min-width:0;max-height:none;overflow:visible;transform:none}.project-card-why[data-astro-cid-iyiqi2so] h3[data-astro-cid-iyiqi2so],.project-card-related[data-astro-cid-iyiqi2so] h3[data-astro-cid-iyiqi2so]{margin:0 0 .42rem;color:var(--text-muted);font-family:var(--font-body);font-size:.72rem;font-weight:800;line-height:1.25;letter-spacing:.06em;text-transform:uppercase}.project-card-why[data-astro-cid-iyiqi2so] p[data-astro-cid-iyiqi2so]{display:block;overflow:visible;margin:0;color:var(--text-secondary);font-size:.8rem;line-height:1.6;overflow-wrap:anywhere}.project-detail-toggle[data-astro-cid-iyiqi2so]{display:inline-flex;width:-moz-max-content;width:max-content;max-width:100%;min-height:2.1rem;align-items:center;gap:.35rem;padding:.35rem 0;border:0;background:none;color:var(--primary);font:inherit;font-size:.73rem;font-weight:750;cursor:pointer}.project-detail-toggle[data-astro-cid-iyiqi2so]:before{content:"";width:.42rem;height:.42rem;flex:0 0 auto;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .22s ease}.project-case-card[data-astro-cid-iyiqi2so][data-detail-open] .project-detail-toggle[data-astro-cid-iyiqi2so]:before{transform:rotate(45deg)}.project-detail-toggle-hide[data-astro-cid-iyiqi2so],.project-case-card[data-astro-cid-iyiqi2so][data-detail-open] .project-detail-toggle-show[data-astro-cid-iyiqi2so]{display:none}.project-case-card[data-astro-cid-iyiqi2so][data-detail-open] .project-detail-toggle-hide[data-astro-cid-iyiqi2so]{display:inline}.project-card-related-links[data-astro-cid-iyiqi2so]{display:flex;min-width:0;flex-wrap:wrap;gap:.3rem .7rem}.project-card-related[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]{font-size:.74rem;font-weight:700;line-height:1.5;text-underline-offset:.18rem;overflow-wrap:anywhere}.project-ask-menu[data-astro-cid-iyiqi2so] summary[data-astro-cid-iyiqi2so]{width:-moz-max-content;width:max-content;color:var(--primary);font-size:.73rem;font-weight:750;cursor:pointer}.project-ask-menu[data-astro-cid-iyiqi2so]>div[data-astro-cid-iyiqi2so]{display:grid;gap:.22rem;margin-top:.35rem}.project-ask-menu[data-astro-cid-iyiqi2so] button[data-astro-cid-iyiqi2so]{padding:.28rem .4rem;border:0;border-radius:.35rem;background:color-mix(in srgb,var(--card-bg) 88%,var(--primary));color:var(--text-secondary);font:inherit;font-size:.7rem;text-align:left;cursor:pointer}.project-card-section[data-astro-cid-iyiqi2so] h3[data-astro-cid-iyiqi2so]{margin:0 0 .2rem;color:var(--text-muted);font-family:var(--font-body);font-size:.72rem;font-weight:800;line-height:1.25;letter-spacing:.06em;text-transform:uppercase}.project-capability-list[data-astro-cid-iyiqi2so]{display:flex;flex-wrap:wrap;gap:.28rem;margin:0;padding:0;list-style:none}.project-capability-list[data-astro-cid-iyiqi2so] li[data-astro-cid-iyiqi2so]{display:inline-flex;align-items:center;min-height:1.58rem;padding:.18rem .44rem;border:1px solid color-mix(in srgb,var(--project-accent) 35%,var(--card-border));border-radius:.34rem;background:var(--chip-bg);color:var(--text-muted);font-size:.68rem;font-weight:650;line-height:1.25}.project-capability-list[data-astro-cid-iyiqi2so] .project-capability-more[data-astro-cid-iyiqi2so]{min-height:1.3rem;padding:0;border:0;background:transparent;font-size:.66rem;font-weight:600}.project-capability-more[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]{display:inline-flex;align-items:center;min-height:1.3rem;padding:.1rem .2rem;color:var(--text-secondary);font-weight:650;text-decoration-line:underline;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);text-underline-offset:.18rem}.project-capability-more[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]:hover{color:var(--primary);text-decoration-color:currentColor}.project-evidence[data-astro-cid-iyiqi2so]{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:.26rem}.project-evidence[data-astro-cid-iyiqi2so] h3[data-astro-cid-iyiqi2so]{margin:0}.project-evidence[data-astro-cid-iyiqi2so] nav[data-astro-cid-iyiqi2so]{display:flex;min-width:0;max-width:100%;flex-wrap:nowrap;align-items:center;gap:.2rem .3rem;color:var(--text-muted);font-size:.75rem;line-height:1.35;white-space:nowrap}.project-evidence[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]{color:var(--text-secondary);font-weight:650;text-underline-offset:.2rem}.project-evidence[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]:hover{color:var(--primary)}.project-evidence[data-astro-cid-iyiqi2so] .project-evidence-more[data-astro-cid-iyiqi2so]{color:var(--text-secondary);font-weight:600;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent)}.project-card-actions[data-astro-cid-iyiqi2so]{display:grid;position:relative;z-index:9;min-height:2.9rem;grid-template-columns:auto minmax(0,1fr);align-items:center;margin-top:auto;gap:.65rem;padding-top:.58rem;border-top:1px solid color-mix(in srgb,var(--project-accent) 22%,var(--card-border));pointer-events:auto}.project-primary-action[data-astro-cid-iyiqi2so]{min-height:2.35rem;flex:0 0 auto;padding:.52rem .86rem;border-radius:var(--radius-control);font-size:.84rem;font-weight:750;text-decoration:none}.project-case-card[data-astro-cid-iyiqi2so] .project-primary-action[data-astro-cid-iyiqi2so]{border:1px solid var(--action-primary-border);background:var(--action-primary-bg);color:var(--action-primary-text);box-shadow:0 0 24px color-mix(in srgb,var(--accent-cyan) 3%,transparent);transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}.project-case-card[data-astro-cid-iyiqi2so] .project-primary-action[data-astro-cid-iyiqi2so]:after{margin-left:.42rem;content:"↗";font-size:.9em;transition:transform .18s ease}.project-case-card[data-astro-cid-iyiqi2so] .project-primary-action[data-astro-cid-iyiqi2so]:hover{border-color:var(--action-primary-border-hover);background:var(--action-primary-bg-hover);color:var(--action-primary-text);box-shadow:0 0 32px color-mix(in srgb,var(--accent-cyan) 6%,transparent);transform:none}.project-case-card[data-astro-cid-iyiqi2so] .project-primary-action[data-astro-cid-iyiqi2so]:hover:after{transform:translate(2px,-2px)}.project-secondary-actions[data-astro-cid-iyiqi2so]{display:flex;min-width:0;max-width:100%;flex-wrap:wrap;justify-content:flex-end;gap:.25rem .32rem}.project-secondary-action-item[data-astro-cid-iyiqi2so]{display:inline-flex;min-width:0;align-items:center;gap:.32rem}.project-secondary-actions[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]{display:inline-flex;min-height:2.35rem;align-items:center;padding:.38rem .05rem;color:var(--text-secondary);font-size:.75rem;font-weight:700;text-decoration-line:underline;text-decoration-color:color-mix(in srgb,var(--project-accent) 48%,var(--card-border));text-underline-offset:.22rem}.project-secondary-actions[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]:hover{color:var(--primary);text-decoration-color:currentColor}.project-secondary-separator[data-astro-cid-iyiqi2so]{color:var(--text-muted);font-size:.72rem}.project-case-card[data-astro-cid-iyiqi2so]:has(:focus-visible){border-color:var(--project-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--project-accent) 22%,transparent),var(--card-shadow-hover)}.project-case-card[data-astro-cid-iyiqi2so][data-project-category*=consult]{--project-accent: var(--card-accent-consulting)}.project-case-card[data-astro-cid-iyiqi2so][data-project-category*=industrial]{--project-accent: var(--card-accent-industrial)}.project-case-card[data-astro-cid-iyiqi2so][data-project-category*=self]{--project-accent: var(--card-accent-self)}.project-case-card[data-astro-cid-iyiqi2so][data-project-slug*=incidentgraph]{--project-accent: var(--card-accent-incident)}.project-case-card[data-astro-cid-iyiqi2so][data-project-slug*=medclaim]{--project-accent: var(--card-accent-consulting)}.project-case-card[data-astro-cid-iyiqi2so][data-project-slug*=telecom]{--project-accent: var(--card-accent-telecom)}.project-case-card[data-astro-cid-iyiqi2so][data-project-slug*=maintenance],.project-case-card[data-astro-cid-iyiqi2so][data-project-slug*=predictive]{--project-accent: var(--card-accent-predictive)}.project-case-card[data-astro-cid-iyiqi2so] [data-astro-cid-iyiqi2so]:where(a):focus-visible{outline:3px solid var(--primary);outline-offset:3px;border-radius:.28rem}.dark .project-case-card[data-astro-cid-iyiqi2so]{box-shadow:var(--card-shadow)}@media (hover: hover) and (pointer: fine){.project-case-card[data-astro-cid-iyiqi2so]:hover{transform:none;border-color:var(--border-hover);background:var(--card-bg-hover);box-shadow:0 0 38px color-mix(in srgb,var(--accent-cyan) 5%,transparent)}.project-card-media[data-astro-cid-iyiqi2so]:hover .project-card-image-element{transform:scale(1.02)}.project-card-media-shell[data-astro-cid-iyiqi2so]:hover .project-thumbnail-actions[data-astro-cid-iyiqi2so],.project-card-media-shell[data-astro-cid-iyiqi2so]:focus-within .project-thumbnail-actions[data-astro-cid-iyiqi2so]{visibility:visible;opacity:1;pointer-events:auto}.project-card-media-shell[data-astro-cid-iyiqi2so]:hover:after,.project-card-media-shell[data-astro-cid-iyiqi2so]:focus-within:after{opacity:.92}.project-detail-toggle[data-astro-cid-iyiqi2so]{display:none}.project-case-card[data-astro-cid-iyiqi2so]:hover .project-card-details-normal[data-astro-cid-iyiqi2so],.project-case-card[data-astro-cid-iyiqi2so]:focus-within .project-card-details-normal[data-astro-cid-iyiqi2so]{visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-3px);transition:opacity .16s ease,transform .2s ease,visibility 0s linear .16s}.project-case-card[data-astro-cid-iyiqi2so]:hover .project-card-details-hover[data-astro-cid-iyiqi2so],.project-case-card[data-astro-cid-iyiqi2so]:focus-within .project-card-details-hover[data-astro-cid-iyiqi2so]{visibility:visible;opacity:1;pointer-events:auto;transform:none;transition:opacity .26s ease .16s,transform .3s cubic-bezier(.16,1,.3,1) .16s,visibility 0s linear .16s}}@media (max-width: 640px){.project-card-media-shell[data-astro-cid-iyiqi2so]{width:calc(100% - .8rem)}.project-thumbnail-actions[data-astro-cid-iyiqi2so]{display:none}.project-card-kicker-actions[data-astro-cid-iyiqi2so]{align-items:flex-end;flex-direction:column}.project-card-discovery-panel[data-astro-cid-iyiqi2so]{display:flex;flex-wrap:wrap;gap:.35rem .65rem;margin:0 .95rem 1rem;padding:.78rem 0 0}.project-card-discovery-panel[data-astro-cid-iyiqi2so] .project-ask-menu[data-astro-cid-iyiqi2so]{flex-basis:100%}.project-mobile-quick-links[data-astro-cid-iyiqi2so]{display:flex;flex-basis:100%;gap:.8rem}.project-mobile-quick-links[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]{min-height:2.2rem;padding:.5rem 0;color:var(--text-secondary);font-size:.75rem;font-weight:750;text-underline-offset:.18rem}.project-card-discovery-panel[data-astro-cid-iyiqi2so] summary[data-astro-cid-iyiqi2so]{min-height:2.2rem;padding:.48rem 0;color:var(--text-secondary);font-size:.75rem;font-weight:750;cursor:pointer}.project-card-discovery-panel[data-astro-cid-iyiqi2so] p[data-astro-cid-iyiqi2so]{width:100%;margin:.25rem 0 0;padding:.5rem;border-left:2px solid var(--theme-accent-border);color:var(--text-secondary);font-size:.78rem;line-height:1.45}.project-card-discovery-panel[data-astro-cid-iyiqi2so] .project-ask-menu[data-astro-cid-iyiqi2so]>div[data-astro-cid-iyiqi2so]{padding:.55rem;border:1px solid var(--card-border);border-radius:.6rem;background:var(--card-bg);box-shadow:0 4px 12px #0f172a1f}.project-card-body[data-astro-cid-iyiqi2so]{gap:.62rem;padding:.9rem .95rem 1rem}.project-card-kicker[data-astro-cid-iyiqi2so]{align-items:flex-start}.project-status-badge[data-astro-cid-iyiqi2so]{max-width:52%;font-size:.66rem}.project-card-title[data-astro-cid-iyiqi2so]{font-size:1.22rem}.project-card-summary[data-astro-cid-iyiqi2so]{-webkit-line-clamp:3}.project-card-actions[data-astro-cid-iyiqi2so]{min-height:0;grid-template-columns:minmax(0,1fr);align-items:stretch}.project-evidence[data-astro-cid-iyiqi2so]{grid-template-columns:minmax(0,1fr)}.project-evidence[data-astro-cid-iyiqi2so] nav[data-astro-cid-iyiqi2so]{overflow:visible;flex-wrap:wrap;white-space:normal}.project-primary-action[data-astro-cid-iyiqi2so]{width:100%}.project-secondary-actions[data-astro-cid-iyiqi2so]{width:100%;justify-content:flex-start;gap:.35rem .9rem}.project-secondary-actions[data-astro-cid-iyiqi2so] a[data-astro-cid-iyiqi2so]{min-height:2.75rem}}@media (prefers-reduced-motion: reduce){.project-case-card[data-astro-cid-iyiqi2so],.project-card-media[data-astro-cid-iyiqi2so] .project-card-image-element,.project-card-discovery-panel[data-astro-cid-iyiqi2so],.project-card-details-normal[data-astro-cid-iyiqi2so],.project-card-details-hover[data-astro-cid-iyiqi2so],.project-detail-toggle[data-astro-cid-iyiqi2so]:before,.project-thumbnail-actions[data-astro-cid-iyiqi2so],.project-card-media-shell[data-astro-cid-iyiqi2so]:after{transition:none}.project-card-details-hover[data-astro-cid-iyiqi2so],.project-card-details-normal[data-astro-cid-iyiqi2so]{transform:none!important}.project-case-card[data-astro-cid-iyiqi2so]:hover,.project-card-media[data-astro-cid-iyiqi2so]:hover .project-card-image-element{transform:none}}.project-listing-surface[data-astro-cid-l6a6buid]{display:grid;min-width:0;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:clamp(1rem,2vw,1.35rem);margin-bottom:1.5rem}@media (min-width: 700px){.project-listing-surface[data-astro-cid-l6a6buid]{grid-template-columns:repeat(2,minmax(0,1fr))}}input.svelte-1wah7ro:focus{outline:0}#search-bar.svelte-1wah7ro{border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--page-bg) 72%,var(--card-bg))}#search-bar.svelte-1wah7ro:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent)}#search-bar.svelte-1wah7ro input:where(.svelte-1wah7ro),#search-bar-inside.svelte-1wah7ro input:where(.svelte-1wah7ro){color:var(--text-primary);font-family:var(--font-body)}#search-bar.svelte-1wah7ro input:where(.svelte-1wah7ro)::-moz-placeholder,#search-bar-inside.svelte-1wah7ro input:where(.svelte-1wah7ro)::-moz-placeholder{color:var(--text-muted)}#search-bar.svelte-1wah7ro input:where(.svelte-1wah7ro)::placeholder,#search-bar-inside.svelte-1wah7ro input:where(.svelte-1wah7ro)::placeholder{color:var(--text-muted)}.search-panel.svelte-1wah7ro{max-height:calc(100vh - 100px);overflow-y:auto;border-color:var(--border-strong);box-shadow:var(--shadow-md)}#display-setting.svelte-d7tq3k{border-color:var(--theme-accent-border);box-shadow:0 18px 45px #10182829}#display-setting.svelte-d7tq3k .accent-slider-shell:where(.svelte-d7tq3k){padding:.875rem .75rem;background:var(--btn-plain-bg-hover);border:1px solid var(--theme-accent-border);box-shadow:inset 0 1px #ffffff73}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k){-webkit-appearance:none;-moz-appearance:none;appearance:none;height:.5rem;border-radius:9999px;background-size:100% 100%;background-repeat:no-repeat;cursor:pointer;outline:none;box-shadow:inset 0 0 0 1px #ffffff8c,0 1px 3px #10182829;transition:box-shadow .15s ease,filter .15s ease}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k):focus-visible{box-shadow:0 0 0 3px var(--theme-accent-soft),0 0 0 1px var(--accent-color),inset 0 0 0 1px #ffffffa6}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k)::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;height:1rem;width:1rem;border-radius:9999px;border:2px solid rgba(255,255,255,.95);background:var(--accent-color);box-shadow:0 2px 8px #10182847;-webkit-transition:transform .15s ease,box-shadow .15s ease;transition:transform .15s ease,box-shadow .15s ease}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k)::-webkit-slider-thumb:hover{box-shadow:0 3px 10px #10182852}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k)::-webkit-slider-thumb:active{transform:scale(.94)}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k)::-moz-range-thumb{height:1rem;width:1rem;border-radius:9999px;border:2px solid rgba(255,255,255,.95);background:var(--accent-color);box-shadow:0 2px 8px #10182847;-moz-transition:transform .15s ease,box-shadow .15s ease;transition:transform .15s ease,box-shadow .15s ease}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k)::-moz-range-thumb:hover{box-shadow:0 3px 10px #10182852}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k)::-moz-range-thumb:active{transform:scale(.94)}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k)::-moz-range-track{height:.5rem;border-radius:9999px;background:transparent;border:0}#display-setting.svelte-d7tq3k input[type=range]:where(.svelte-d7tq3k)::-ms-thumb{height:1rem;width:1rem;border-radius:9999px;border:2px solid rgba(255,255,255,.95);background:var(--accent-color);box-shadow:0 2px 8px #10182847}.expressive-code .frame{--tw-shadow: 0 0 #0000 !important;--tw-shadow-colored: 0 0 #0000 !important;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)!important}.expressive-code .title{font-family:var(--font-mono)}.card-base{overflow:hidden;border-radius:var(--radius-card);border-width:1px;border-color:var(--card-border);background-color:var(--card-bg);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;box-shadow:var(--card-shadow);-webkit-backdrop-filter:none;backdrop-filter:none}.card-base:hover{border-color:color-mix(in srgb,var(--primary) 28%,var(--card-border));box-shadow:var(--card-shadow-hover)}widget-layout.card-base{background:var(--card-bg);border-color:var(--card-border)}widget-layout.card-base>div:first-child{letter-spacing:-.02em}#sidebar>div:first-child>.card-base{padding:.9rem;background:transparent}#sidebar>div:first-child>.card-base>a{border:1px solid var(--border-default);border-radius:.62rem;box-shadow:0 0 24px color-mix(in srgb,var(--accent-cyan) 3%,transparent)}#sidebar>div:first-child>.card-base>a img{filter:saturate(1.04) contrast(1.03)}#sidebar .profile-name{color:var(--text-primary)}#sidebar .profile-bio{color:var(--text-secondary)}#sidebar .social-links a{border:1px solid var(--border-subtle);box-shadow:none}#sidebar .social-links a:hover{border-color:var(--border-hover);box-shadow:0 0 22px color-mix(in srgb,var(--accent-cyan) 4%,transparent);transform:none}#sidebar widget-layout.card-base>div:first-child{color:var(--text-primary);font-size:.92rem;letter-spacing:.01em}#sidebar widget-layout.card-base>div:first-child:before{width:.22rem;background:var(--primary);box-shadow:0 0 12px color-mix(in srgb,var(--primary) 34%,transparent)}#sidebar .tag-cloud a,#sidebar .tag-cloud a:visited{border-color:color-mix(in srgb,var(--primary) 30%,var(--card-border));background:color-mix(in srgb,var(--primary) 9%,var(--card-bg));color:color-mix(in srgb,var(--primary) 78%,var(--text-primary))}#sidebar .tag-cloud a:hover{background:color-mix(in srgb,var(--primary) 18%,var(--card-bg));border-color:color-mix(in srgb,var(--primary) 52%,var(--card-border))}#sidebar #categories a>button{min-height:2.5rem;padding:.5rem .625rem;border:0;border-radius:.5rem;background:transparent;color:#5b6069;font-size:.8rem;transform:none}#sidebar #categories a>button:hover{padding-left:.625rem;background:var(--chip-bg);color:var(--text-secondary);transform:none}#sidebar #categories a>button>div>div:last-child:not(:first-child){min-width:1.625rem;height:1.5rem;min-height:1.5rem;padding:0 .5rem;border:1px solid var(--border-subtle);border-radius:.32rem;background:var(--chip-bg);color:var(--text-muted);font-family:var(--font-body);font-weight:600;font-size:.7rem}h1,h2,h3,h4,h5,h6,p,a,span,li,ul,ol,blockquote,code,pre,table,th,td,strong{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.\!link{position:relative;z-index:0}.\!link:before{position:absolute;inset:0;z-index:-10;--tw-scale-x: .85;--tw-scale-y: .85;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:inherit;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;content:var(--tw-content);transition-timing-function:cubic-bezier(0,0,.2,1)}.\!link:hover:before{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));content:var(--tw-content);background-color:var(--btn-plain-bg-hover)}.\!link:active{background-image:none}.\!link:active:before{content:var(--tw-content);background-color:var(--btn-plain-bg-active)}.\!link{margin:-.25rem;border-radius:.375rem;padding:.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.link{position:relative;z-index:0}.link:before{position:absolute;inset:0;z-index:-10;--tw-scale-x: .85;--tw-scale-y: .85;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:inherit;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;content:var(--tw-content);transition-timing-function:cubic-bezier(0,0,.2,1)}.link:hover:before{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));content:var(--tw-content);background-color:var(--btn-plain-bg-hover)}.link:active{background-image:none}.link:active:before{content:var(--tw-content);background-color:var(--btn-plain-bg-active)}.link{margin:-.25rem;border-radius:.375rem;padding:.25rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.link-lg{position:relative;z-index:0}.link-lg:before{position:absolute;inset:0;z-index:-10;--tw-scale-x: .85;--tw-scale-y: .85;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:inherit;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;content:var(--tw-content);transition-timing-function:cubic-bezier(0,0,.2,1)}.link-lg:hover:before{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));content:var(--tw-content);background-color:var(--btn-plain-bg-hover)}.link-lg:active{background-image:none}.link-lg:active:before{content:var(--tw-content);background-color:var(--btn-plain-bg-active)}.link-lg{margin:-.375rem;border-radius:.375rem;padding:.375rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.float-panel{top:5.25rem;overflow:hidden;border-radius:var(--radius-large);border-width:1px;border-color:var(--card-border);background-color:var(--float-panel-bg);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;box-shadow:var(--card-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.float-panel-closed{pointer-events:none;--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0}.search-panel mark{background-color:transparent;color:var(--primary)}.btn-card{display:flex;align-items:center;justify-content:center;background-color:var(--card-bg);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-card:hover{background-color:var(--btn-card-bg-hover)}.btn-card:active{background-color:var(--btn-card-bg-active)}.btn-card.disabled{pointer-events:none;color:#0000001a}.btn-card.disabled:is(.dark *){color:#ffffff1a}.btn-plain{position:relative;display:flex;align-items:center;justify-content:center;background-image:none;color:#000000bf;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-plain:hover{color:var(--primary)}.btn-plain:is(.dark *){color:#ffffffbf}.btn-plain:hover:is(.dark *){color:var(--primary)}.btn-plain:not(.scale-animation):hover{background-color:var(--btn-plain-bg-hover)}.btn-plain:not(.scale-animation):active{background-color:var(--btn-plain-bg-active)}.btn-plain.scale-animation{position:relative;z-index:0}.btn-plain.scale-animation:before{position:absolute;inset:0;z-index:-10;--tw-scale-x: .85;--tw-scale-y: .85;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-radius:inherit;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;content:var(--tw-content);transition-timing-function:cubic-bezier(0,0,.2,1)}.btn-plain.scale-animation:hover:before{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));content:var(--tw-content);background-color:var(--btn-plain-bg-hover)}.btn-plain.scale-animation:active{background-image:none}.btn-plain.scale-animation:active:before{content:var(--tw-content);background-color:var(--btn-plain-bg-active)}.btn-plain.scale-animation.current-theme-btn{color:var(--primary)}.btn-plain.scale-animation.current-theme-btn:before{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));background-color:var(--btn-plain-bg-hover);content:var(--tw-content);opacity:1}.nav-link-active{text-decoration-line:underline;text-decoration-color:var(--accent-color);text-decoration-thickness:2px;text-underline-offset:.35rem}.btn-regular{display:flex;align-items:center;justify-content:center;background-color:var(--btn-regular-bg);color:var(--btn-content);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-regular:hover{background-color:var(--btn-regular-bg-hover)}.btn-regular:active{background-color:var(--btn-regular-bg-active)}.toc-hide,.toc-not-ready{pointer-events:none;opacity:0}#toc-inner-wrapper{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 2rem,black calc(100% - 2rem),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 2rem,black calc(100% - 2rem),transparent 100%)}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{display:none}.text-90{color:var(--text-primary)}.text-75{color:var(--text-secondary)}.text-50{color:var(--text-muted)}.text-30{color:var(--text-subtle)}.meta-icon{margin-right:.5rem;display:flex;height:2rem;width:2rem;align-items:center;justify-content:center;border-radius:.375rem;background-color:var(--btn-regular-bg);color:var(--btn-content);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn-regular-dark.success{background-color:var(--action-primary-bg)}.custom-md img,#post-cover img{cursor:zoom-in}#post-cover{display:block;width:100%;height:auto;max-height:none;overflow:visible;position:relative;aspect-ratio:auto}#post-cover img{display:block;width:100%;height:auto;max-height:none;-o-object-fit:contain;object-fit:contain;-o-object-position:center center;object-position:center center;border-radius:1rem}::-moz-selection{background-color:var(--selection-bg)}::selection{background-color:var(--selection-bg)}.dash-line{position:relative}.dash-line:before{content:"";position:absolute;width:10%;height:100%;left:calc(50% - 1px);border-left:2px dashed var(--line-color);pointer-events:none;transition:all .3s;transform:translateY(-50%)}.collapsed{height:var(--collapsedHeight)}.custom-md spoiler{overflow:hidden;border-radius:.375rem;background-color:var(--codeblock-bg);padding:.125rem .25rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.custom-md spoiler:hover{background-color:transparent}.custom-md spoiler:not(:hover){color:var(--codeblock-bg)}.custom-md spoiler:not(:hover) *{color:var(--codeblock-bg)}.custom-md img,.custom-md picture img,main article img,main article picture img,.prose img,.prose picture img,.markdown img,.markdown picture img,.post-content img,.post-content picture img,.article-content img,.article-content picture img{max-width:100%!important;height:auto!important;max-height:none!important;-o-object-fit:contain!important;object-fit:contain!important;-o-object-position:center center!important;object-position:center center!important}.custom-md picture,main article picture,.prose picture,.markdown picture,.post-content picture,.article-content picture,.prose figure,.markdown figure,.post-content figure,.article-content figure{display:block!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important}.post-cover,.post-hero,.article-cover,.cover-image,.hero-image,.image-wrapper,.markdown-image{width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important}#post-cover img[src*=vrp],.custom-md img[src*=vrp],main article img[src*=vrp],.prose img[src*=vrp],.markdown img[src*=vrp],.post-content img[src*=vrp],.article-content img[src*=vrp]{width:100%!important;height:auto!important;max-height:none!important;-o-object-fit:contain!important;object-fit:contain!important;-o-object-position:center center!important;object-position:center center!important}.custom-md blockquote.admonition .bdm-title{display:flex;align-items:center;margin-bottom:-.9rem;font-weight:700}.custom-md blockquote.admonition .bdm-title:before{content:" ";display:inline-block;font-size:inherit;overflow:visible;margin-right:.6rem;height:1em;width:1em;vertical-align:-.126em;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform:translateY(-.0625rem)}.custom-md blockquote.admonition.bdm-tip .bdm-title{color:var(--admonitions-color-tip)}.custom-md blockquote.admonition.bdm-tip .bdm-title:before{background:var(--admonitions-color-tip);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z'%3E%3C/path%3E%3C/svg%3E")}.custom-md blockquote.admonition.bdm-tip:before{background:var(--admonitions-color-tip)}.custom-md blockquote.admonition.bdm-note .bdm-title{color:var(--admonitions-color-note)}.custom-md blockquote.admonition.bdm-note .bdm-title:before{background:var(--admonitions-color-note);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath fill='var(--admonitions-color-tip)' d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath fill='var(--admonitions-color-tip)' d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E")}.custom-md blockquote.admonition.bdm-note:before{background:var(--admonitions-color-note)}.custom-md blockquote.admonition.bdm-important .bdm-title{color:var(--admonitions-color-important)}.custom-md blockquote.admonition.bdm-important .bdm-title:before{background:var(--admonitions-color-important);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E")}.custom-md blockquote.admonition.bdm-important:before{background:var(--admonitions-color-important)}.custom-md blockquote.admonition.bdm-warning .bdm-title{color:var(--admonitions-color-warning)}.custom-md blockquote.admonition.bdm-warning .bdm-title:before{background:var(--admonitions-color-warning);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E")}.custom-md blockquote.admonition.bdm-warning:before{background:var(--admonitions-color-warning)}.custom-md blockquote.admonition.bdm-caution .bdm-title{color:var(--admonitions-color-caution)}.custom-md blockquote.admonition.bdm-caution .bdm-title:before{background:var(--admonitions-color-caution);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E")}.custom-md blockquote.admonition.bdm-caution:before{background:var(--admonitions-color-caution)}.custom-md img{border-radius:.75rem}.custom-md hr{border-color:var(--line-divider);border-style:dashed}.custom-md iframe{border-radius:.75rem;margin-left:auto;margin-right:auto;max-width:100%}a.card-github{display:block;background:color-mix(in srgb,var(--card-bg) 94%,var(--surface-2));position:relative;margin:1.25rem 0;padding:1.15rem 1.25rem;color:var(--tw-prose-body);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-decoration-thickness:0px;text-decoration-line:none;overflow:hidden}a.card-github:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--border-subtle));background-color:var(--card-bg);box-shadow:var(--shadow-md);transform:translateY(-2px)}a.card-github:hover .gc-titlebar{color:var(--btn-content)}a.card-github:hover .gc-stars,a.card-github:hover .gc-forks,a.card-github:hover .gc-license,a.card-github:hover .gc-description{color:var(--tw-prose-headings)}a.card-github:hover .gc-stars:before,a.card-github:hover .gc-forks:before,a.card-github:hover .gc-license:before,a.card-github:hover .gc-description:before{background-color:var(--tw-prose-headings)}a.card-github:active{transform:translateY(0);background-color:var(--btn-regular-bg-active)}a.card-github:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 48%,transparent);outline-offset:3px}a.card-github .gc-eyebrow{margin-bottom:.65rem;color:var(--primary);font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}a.card-github .gc-titlebar{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;color:var(--tw-prose-headings);font-size:clamp(1rem,2.2vw,1.25rem);font-weight:500}a.card-github .gc-titlebar .gc-titlebar-left{display:flex;flex-flow:row nowrap;gap:.5rem;min-width:0}a.card-github .gc-titlebar .gc-repo{font-weight:700;overflow-wrap:anywhere}a.card-github .gc-titlebar .gc-owner{font-weight:300;position:relative;display:flex;flex-flow:row nowrap;gap:.5rem;align-items:center}a.card-github .gc-titlebar .gc-avatar{display:block;overflow:hidden;width:1.5rem;height:1.5rem;margin-top:-.1rem;background-color:var(--primary);background-size:cover;border-radius:50%}a.card-github .gc-description{margin-bottom:.7rem;font-size:1rem;font-weight:400;line-height:1.6;color:var(--tw-prose-body)}a.card-github .gc-infobar{display:flex;flex-flow:row nowrap;gap:1.1rem;flex-wrap:wrap;color:var(--tw-prose-body);width:-moz-fit-content;width:fit-content}a.card-github .gc-language{display:none}a.card-github .gc-stars,a.card-github .gc-forks,a.card-github .gc-license,a.card-github .github-logo{font-weight:500;font-size:.875rem;opacity:.9}a.card-github .gc-stars:before,a.card-github .gc-forks:before,a.card-github .gc-license:before,a.card-github .github-logo:before{content:" ";display:inline-block;height:1.3em;width:1.3em;margin-right:.4rem;vertical-align:-.24em;font-size:inherit;background-color:var(--tw-prose-body);overflow:visible;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transition-property:background-color,background;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}a.card-github .gc-stars:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='16' viewBox='0 0 16 16' version='1.1' width='16'%3E%3Cpath d='M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.751.751 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25Zm0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41L8 2.694Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='16' viewBox='0 0 16 16' version='1.1' width='16'%3E%3Cpath d='M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.751.751 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25Zm0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41L8 2.694Z'%3E%3C/path%3E%3C/svg%3E")}a.card-github .gc-license:before{margin-right:.5rem;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='16' viewBox='0 0 16 16' version='1.1' width='16'%3E%3Cpath d='M8.75.75V2h.985c.304 0 .603.08.867.231l1.29.736c.038.022.08.033.124.033h2.234a.75.75 0 0 1 0 1.5h-.427l2.111 4.692a.75.75 0 0 1-.154.838l-.53-.53.529.531-.001.002-.002.002-.006.006-.006.005-.01.01-.045.04c-.21.176-.441.327-.686.45C14.556 10.78 13.88 11 13 11a4.498 4.498 0 0 1-2.023-.454 3.544 3.544 0 0 1-.686-.45l-.045-.04-.016-.015-.006-.006-.004-.004v-.001a.75.75 0 0 1-.154-.838L12.178 4.5h-.162c-.305 0-.604-.079-.868-.231l-1.29-.736a.245.245 0 0 0-.124-.033H8.75V13h2.5a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1 0-1.5h2.5V3.5h-.984a.245.245 0 0 0-.124.033l-1.289.737c-.265.15-.564.23-.869.23h-.162l2.112 4.692a.75.75 0 0 1-.154.838l-.53-.53.529.531-.001.002-.002.002-.006.006-.016.015-.045.04c-.21.176-.441.327-.686.45C4.556 10.78 3.88 11 3 11a4.498 4.498 0 0 1-2.023-.454 3.544 3.544 0 0 1-.686-.45l-.045-.04-.016-.015-.006-.006-.004-.004v-.001a.75.75 0 0 1-.154-.838L2.178 4.5H1.75a.75.75 0 0 1 0-1.5h2.234a.249.249 0 0 0 .125-.033l1.288-.737c.265-.15.564-.23.869-.23h.984V.75a.75.75 0 0 1 1.5 0Zm2.945 8.477c.285.135.718.273 1.305.273s1.02-.138 1.305-.273L13 6.327Zm-10 0c.285.135.718.273 1.305.273s1.02-.138 1.305-.273L3 6.327Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='16' viewBox='0 0 16 16' version='1.1' width='16'%3E%3Cpath d='M8.75.75V2h.985c.304 0 .603.08.867.231l1.29.736c.038.022.08.033.124.033h2.234a.75.75 0 0 1 0 1.5h-.427l2.111 4.692a.75.75 0 0 1-.154.838l-.53-.53.529.531-.001.002-.002.002-.006.006-.006.005-.01.01-.045.04c-.21.176-.441.327-.686.45C14.556 10.78 13.88 11 13 11a4.498 4.498 0 0 1-2.023-.454 3.544 3.544 0 0 1-.686-.45l-.045-.04-.016-.015-.006-.006-.004-.004v-.001a.75.75 0 0 1-.154-.838L12.178 4.5h-.162c-.305 0-.604-.079-.868-.231l-1.29-.736a.245.245 0 0 0-.124-.033H8.75V13h2.5a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1 0-1.5h2.5V3.5h-.984a.245.245 0 0 0-.124.033l-1.289.737c-.265.15-.564.23-.869.23h-.162l2.112 4.692a.75.75 0 0 1-.154.838l-.53-.53.529.531-.001.002-.002.002-.006.006-.016.015-.045.04c-.21.176-.441.327-.686.45C4.556 10.78 3.88 11 3 11a4.498 4.498 0 0 1-2.023-.454 3.544 3.544 0 0 1-.686-.45l-.045-.04-.016-.015-.006-.006-.004-.004v-.001a.75.75 0 0 1-.154-.838L2.178 4.5H1.75a.75.75 0 0 1 0-1.5h2.234a.249.249 0 0 0 .125-.033l1.288-.737c.265-.15.564-.23.869-.23h.984V.75a.75.75 0 0 1 1.5 0Zm2.945 8.477c.285.135.718.273 1.305.273s1.02-.138 1.305-.273L13 6.327Zm-10 0c.285.135.718.273 1.305.273s1.02-.138 1.305-.273L3 6.327Z'%3E%3C/path%3E%3C/svg%3E")}a.card-github .gc-forks:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='16' viewBox='0 0 16 16' version='1.1' width='16'%3E%3Cpath d='M5 5.372v.878c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75v-.878a2.25 2.25 0 1 1 1.5 0v.878a2.25 2.25 0 0 1-2.25 2.25h-1.5v2.128a2.251 2.251 0 1 1-1.5 0V8.5h-1.5A2.25 2.25 0 0 1 3.5 6.25v-.878a2.25 2.25 0 1 1 1.5 0ZM5 3.25a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Zm6.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Zm-3 8.75a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='16' viewBox='0 0 16 16' version='1.1' width='16'%3E%3Cpath d='M5 5.372v.878c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75v-.878a2.25 2.25 0 1 1 1.5 0v.878a2.25 2.25 0 0 1-2.25 2.25h-1.5v2.128a2.251 2.251 0 1 1-1.5 0V8.5h-1.5A2.25 2.25 0 0 1 3.5 6.25v-.878a2.25 2.25 0 1 1 1.5 0ZM5 3.25a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Zm6.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Zm-3 8.75a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Z'%3E%3C/path%3E%3C/svg%3E")}a.card-github .github-logo{font-size:1.25rem}a.card-github .github-logo:before{background-color:var(--tw-prose-headings);margin-right:0;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31' height='32' viewBox='0 0 496 512'%3E%3Cpath fill='%23a1f7cb' d='M165.9 397.4c0 2-2.3 3.6-5.2 3.6c-3.3.3-5.6-1.3-5.6-3.6c0-2 2.3-3.6 5.2-3.6c3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9c2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9c.3 2 2.9 3.3 5.9 2.6c2.9-.7 4.9-2.6 4.6-4.6c-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2c12.8 2.3 17.3-5.6 17.3-12.1c0-6.2-.3-40.4-.3-61.4c0 0-70 15-84.7-29.8c0 0-11.4-29.1-27.8-36.6c0 0-22.9-15.7 1.6-15.4c0 0 24.9 2 38.6 25.8c21.9 38.6 58.6 27.5 72.9 20.9c2.3-16 8.8-27.1 16-33.7c-55.9-6.2-112.3-14.3-112.3-110.5c0-27.5 7.6-41.3 23.6-58.9c-2.6-6.5-11.1-33.3 2.6-67.9c20.9-6.5 69 27 69 27c20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27c13.7 34.7 5.2 61.4 2.6 67.9c16 17.7 25.8 31.5 25.8 58.9c0 96.5-58.9 104.2-114.8 110.5c9.2 7.9 17 22.9 17 46.4c0 33.7-.3 75.4-.3 83.6c0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252C496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2c1.6 1.6 3.9 2.3 5.2 1c1.3-1 1-3.3-.7-5.2c-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9c1.6 1 3.6.7 4.3-.7c.7-1.3-.3-2.9-2.3-3.9c-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2c2.3 2.3 5.2 2.6 6.5 1c1.3-1.3.7-4.3-1.3-6.2c-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9c1.6 2.3 4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2c-1.4-2.3-4-3.3-5.6-2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31' height='32' viewBox='0 0 496 512'%3E%3Cpath fill='%23a1f7cb' d='M165.9 397.4c0 2-2.3 3.6-5.2 3.6c-3.3.3-5.6-1.3-5.6-3.6c0-2 2.3-3.6 5.2-3.6c3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9c2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9c.3 2 2.9 3.3 5.9 2.6c2.9-.7 4.9-2.6 4.6-4.6c-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2c12.8 2.3 17.3-5.6 17.3-12.1c0-6.2-.3-40.4-.3-61.4c0 0-70 15-84.7-29.8c0 0-11.4-29.1-27.8-36.6c0 0-22.9-15.7 1.6-15.4c0 0 24.9 2 38.6 25.8c21.9 38.6 58.6 27.5 72.9 20.9c2.3-16 8.8-27.1 16-33.7c-55.9-6.2-112.3-14.3-112.3-110.5c0-27.5 7.6-41.3 23.6-58.9c-2.6-6.5-11.1-33.3 2.6-67.9c20.9-6.5 69 27 69 27c20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27c13.7 34.7 5.2 61.4 2.6 67.9c16 17.7 25.8 31.5 25.8 58.9c0 96.5-58.9 104.2-114.8 110.5c9.2 7.9 17 22.9 17 46.4c0 33.7-.3 75.4-.3 83.6c0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252C496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2c1.6 1.6 3.9 2.3 5.2 1c1.3-1 1-3.3-.7-5.2c-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9c1.6 1 3.6.7 4.3-.7c.7-1.3-.3-2.9-2.3-3.9c-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2c2.3 2.3 5.2 2.6 6.5 1c1.3-1.3.7-4.3-1.3-6.2c-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9c1.6 2.3 4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2c-1.4-2.3-4-3.3-5.6-2'/%3E%3C/svg%3E")}a.card-github.fetch-waiting{pointer-events:auto;opacity:1;transition:opacity .15s ease-in-out}a.card-github.fetch-waiting .gc-repo{margin-left:-.1rem}a.card-github.fetch-error{pointer-events:all;opacity:1}.card-github,.gc-description,.gc-titlebar,.gc-stars,.gc-forks,.gc-license,.gc-avatar,.github-logo{transition-property:color,background-color,border-color,box-shadow,opacity,transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.18s}@media (max-width: 36rem){a.card-github{padding:1rem}a.card-github .gc-titlebar-left{flex-wrap:wrap}a.card-github .gc-divider{display:none}a.card-github .gc-repo{flex-basis:calc(100% - 2rem);margin-left:2rem}a.card-github .gc-infobar{gap:.65rem 1rem}}@media (prefers-reduced-motion: reduce){.card-github,.gc-description,.gc-titlebar,.gc-stars,.gc-forks,.gc-license,.gc-avatar,.github-logo{transition:none}a.card-github:hover{transform:none}}@keyframes pulsate{0%{opacity:.15}50%{opacity:.25}to{opacity:.15}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Roboto,sans-serif,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: rgb(17 24 39 / 10%);--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-base{font-size:1rem;line-height:1.75}.prose-base :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose-base :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose-base :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.prose-base :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose-base :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose-base :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose-base :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose-base :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-base :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-base :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-base :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-base :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose-base :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-base :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em}.prose-base :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-base :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose-base :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose-base :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose-base :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose-base :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-base :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose-base :where(.prose-base>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose-base :where(.prose-base>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose-base>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(.prose-base>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(.prose-base>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose-base :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose-base :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose-base :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose-base :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose-base :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:3em;margin-bottom:3em}.prose-base :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.7142857}.prose-base :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose-base :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-base :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-base :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.prose-base :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-base :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-base :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose-base :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-base :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose-base :where(.prose-base>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-base :where(.prose-base>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-right-2{right:-.5rem}.-right-\[var\(--toc-width\)\]{right:calc(var(--toc-width) * -1)}.-top-8{top:-2rem}.-top-\[3\.25rem\]{top:-3.25rem}.left-0{left:0}.left-4{left:1rem}.right-0{right:0}.right-4{right:1rem}.right-6{right:1.5rem}.top-0{top:0}.top-1\/2{top:50%}.top-11{top:2.75rem}.top-14{top:3.5rem}.top-20{top:5rem}.top-4{top:1rem}.top-\[calc\(1rem_-_var\(--banner-height-extend\)\)\]{top:calc(1rem - var(--banner-height-extend))}.isolate{isolation:isolate}.-z-10{z-index:-10}.z-0{z-index:0}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.col-span-2{grid-column:span 2 / span 2}.row-start-1{grid-row-start:1}.row-start-2{grid-row-start:2}.row-end-2{grid-row-end:2}.row-end-3{grid-row-end:3}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-1\.5{margin-left:.375rem;margin-right:.375rem}.mx-32{margin-left:8rem;margin-right:8rem}.mx-auto{margin-left:auto;margin-right:auto}.my-10{margin-top:2.5rem;margin-bottom:2.5rem}.my-auto{margin-top:auto;margin-bottom:auto}.-mb-2{margin-bottom:-.5rem}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-8{margin-left:2rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.\!block{display:block!important}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[3\.25rem\]{height:3.25rem}.h-\[3\.75rem\]{height:3.75rem}.h-\[300vh\]{height:300vh}.h-\[4\.5rem\]{height:4.5rem}.h-\[calc\(100vh_-_20rem\)\]{height:calc(100vh - 20rem)}.h-\[calc\(var\(--banner-height-home\)_-_4\.5rem\)\]{height:calc(var(--banner-height-home) - 4.5rem)}.h-\[var\(--banner-height-home\)\]{height:var(--banner-height-home)}.h-auto{height:auto}.h-full{height:100%}.max-h-\[4rem\]{max-height:4rem}.max-h-full{max-height:100%}.min-h-12{min-height:3rem}.min-h-9{min-height:2.25rem}.min-h-screen{min-height:100vh}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-11{width:2.75rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[15\%\]{width:15%}.w-\[3\.75rem\]{width:3.75rem}.w-\[70\%\]{width:70%}.w-\[var\(--toc-width\)\]{width:var(--toc-width)}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[2rem\]{min-width:2rem}.min-w-\[5\.75rem\]{min-width:5.75rem}.\!max-w-none{max-width:none!important}.max-w-\[12rem\]{max-width:12rem}.max-w-\[var\(--page-width\)\]{max-width:var(--page-width)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.basis-full{flex-basis:100%}.-translate-x-1{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-2{--tw-translate-x: -.5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-16{--tw-translate-y: -4rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-\[1px\]{--tw-translate-y: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[var\(--banner-height-extend\)\]{--tw-translate-y: var(--banner-height-extend);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[var\(--bannerOffset\)\]{--tw-translate-y: var(--bannerOffset);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-90{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.grid-cols-\[17\.5rem_auto\]{grid-template-columns:17.5rem auto}.grid-rows-\[auto_1fr_auto\]{grid-template-rows:auto 1fr auto}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.\!justify-start{justify-content:flex-start!important}.justify-start{justify-content:flex-start}.\!justify-end{justify-content:flex-end!important}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-\[0\.4rem\]{gap:.4rem}.gap-\[0\.65rem\]{gap:.65rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-\[0\.22rem\]{-moz-column-gap:.22rem;column-gap:.22rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-\[0\.18rem\]{row-gap:.18rem}.overflow-hidden{overflow:hidden}.\!overflow-visible{overflow:visible!important}.overflow-x-hidden{overflow-x:hidden}.overflow-y-scroll{overflow-y:scroll}.overflow-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[0\.1875rem\]{border-radius:.1875rem}.rounded-\[var\(--radius-large\)\]{border-radius:var(--radius-large)}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.\!rounded-t-none{border-top-left-radius:0!important;border-top-right-radius:0!important}.border{border-width:1px}.border-b-\[1px\]{border-bottom-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[var\(--line-divider\)\]{border-color:var(--line-divider)}.border-black\/10{border-color:#0000001a}.bg-\[var\(--btn-regular-bg\)\]{background-color:var(--btn-regular-bg)}.bg-\[var\(--card-bg\)\]{background-color:var(--card-bg)}.bg-\[var\(--license-block-bg\)\]{background-color:var(--license-block-bg)}.bg-\[var\(--page-bg\)\]{background-color:var(--page-bg)}.bg-\[var\(--primary\)\]{background-color:var(--primary)}.bg-\[var\(--theme-accent-border\)\]{background-color:var(--theme-accent-border)}.bg-\[var\(--toc-badge-bg\)\]{background-color:var(--toc-badge-bg)}.bg-black\/10{background-color:#0000001a}.bg-black\/5{background-color:#0000000d}.bg-black\/60{background-color:#0009}.bg-black\/80{background-color:#000c}.bg-black\/\[0\.04\]{background-color:#0000000a}.bg-current{background-color:currentColor}.bg-transparent{background-color:transparent}.bg-opacity-50{--tw-bg-opacity: .5}.bg-none{background-image:none}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.object-fill{-o-object-fit:fill;object-fit:fill}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-5{padding:1.25rem}.px-0{padding-left:0;padding-right:0}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.px-\[0\.34rem\]{padding-left:.34rem;padding-right:.34rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-\[0\.12rem\]{padding-top:.12rem;padding-bottom:.12rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pr-1{padding-right:.25rem}.pr-8{padding-right:2rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-5xl{font-size:3rem;line-height:1}.text-\[0\.72rem\]{font-size:.72rem}.text-\[0\.75rem\]{font-size:.75rem}.text-\[0\.7rem\]{font-size:.7rem}.text-\[0\.875rem\]{font-size:.875rem}.text-\[0\.8rem\]{font-size:.8rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[1\.25rem\]{font-size:1.25rem}.text-\[1\.2rem\]{font-size:1.2rem}.text-\[1\.75rem\]{font-size:1.75rem}.text-\[15rem\]{font-size:15rem}.text-\[16px\]{font-size:16px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-5{line-height:1.25rem}.leading-\[1\.05\]{line-height:1.05}.leading-\[1\.38\]{line-height:1.38}.leading-none{line-height:1}.tracking-normal{letter-spacing:0em}.tracking-wide{letter-spacing:.025em}.text-\[var\(--btn-content\)\]{color:var(--btn-content)}.text-\[var\(--meta-divider\)\]{color:var(--meta-divider)}.text-\[var\(--primary\)\]{color:var(--primary)}.text-black\/25{color:#00000040}.text-black\/30{color:#0000004d}.text-black\/5{color:#0000000d}.text-black\/50{color:#00000080}.text-black\/75{color:#000000bf}.text-black\/90{color:#000000e6}.text-black\/\[0\.2\]{color:#0003}.text-neutral-400{--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.text-neutral-500{--tw-text-opacity: 1;color:rgb(115 115 115 / var(--tw-text-opacity, 1))}.text-neutral-700{--tw-text-opacity: 1;color:rgb(64 64 64 / var(--tw-text-opacity, 1))}.text-neutral-900{--tw-text-opacity: 1;color:rgb(23 23 23 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-white\/75{color:#ffffffbf}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.outline-0{outline-width:0px}.outline-4{outline-width:4px}.-outline-offset-\[2px\]{outline-offset:-2px}.outline-\[var\(--card-bg\)\]{outline-color:var(--card-bg)}.outline-\[var\(--primary\)\]{outline-color:var(--primary)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-700{transition-duration:.7s}.will-change-transform{will-change:transform}.custom-md{color:var(--text-secondary);line-height:1.75}.custom-md :where(h2,h3,h4){color:var(--text-primary);scroll-margin-top:8.5rem}.custom-md h2{margin-top:2.4em;padding-top:.85em;border-top:1px solid var(--border-subtle);font-size:clamp(2rem,4vw,2.45rem);line-height:1.05;letter-spacing:-.022em}.custom-md h3{margin-top:1.8em;font-size:clamp(1.5rem,2.8vw,1.85rem);line-height:1.08;letter-spacing:-.018em}.custom-md :where(p,li){line-height:1.75}.custom-md blockquote{margin-block:1.4rem;padding:.9rem 1.1rem;border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--surface-2);color:var(--text-secondary)}.custom-md table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:.88rem}.custom-md :where(th,td){padding:.75rem .85rem;border:0;border-bottom:1px solid var(--border-subtle);text-align:left;vertical-align:top}.custom-md th{background:var(--surface-2);color:var(--text-primary);font-family:var(--font-body);font-size:.7rem;font-weight:600;letter-spacing:.045em;text-transform:uppercase}.custom-md .expressive-code{max-width:100%;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.custom-md pre{max-width:100%;overflow-x:auto}.custom-md :where(a,th,td){overflow-wrap:anywhere}.custom-md :where(figure,.image-wrapper){margin-block:1.5rem}.custom-md figcaption{margin-top:.6rem;color:var(--text-muted);font-family:var(--font-body);font-size:.7rem;line-height:1.55}@media (max-width: 640px){.custom-md h2{font-size:clamp(1.8rem,8vw,2.15rem)}.custom-md h3{font-size:clamp(1.35rem,6.5vw,1.65rem)}}.custom-md h1{font-size:1.875rem;line-height:2.25rem}.custom-md h1 .anchor,.custom-md h2 .anchor,.custom-md h3 .anchor,.custom-md h4 .anchor,.custom-md h5 .anchor,.custom-md h6 .anchor{margin:-.125rem!important;margin-left:.2ch!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important;padding:.125rem!important;text-decoration-line:none!important;opacity:0!important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter!important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter!important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important;transition-duration:.15s!important}.custom-md h1 .anchor .anchor-icon,.custom-md h2 .anchor .anchor-icon,.custom-md h3 .anchor .anchor-icon,.custom-md h4 .anchor .anchor-icon,.custom-md h5 .anchor .anchor-icon,.custom-md h6 .anchor .anchor-icon{margin-left:.45ch!important;margin-right:.45ch!important}.custom-md h1:hover .anchor,.custom-md h2:hover .anchor,.custom-md h3:hover .anchor,.custom-md h4:hover .anchor,.custom-md h5:hover .anchor,.custom-md h6:hover .anchor{opacity:1!important}.custom-md a:not(.no-styling){position:relative;background-image:none;font-weight:500;color:var(--primary);text-decoration-line:underline;text-decoration-color:var(--link-underline);text-decoration-style:dashed;text-decoration-thickness:1px;text-underline-offset:4px;box-decoration-break:clone;-webkit-box-decoration-break:clone;display:inline-block}.custom-md a:not(.no-styling):hover,.custom-md a:not(.no-styling):active{text-decoration-color:transparent;background:var(--btn-plain-bg-hover);border-bottom:1px dashed var(--link-hover);text-decoration:none}.custom-md code{overflow:hidden;border-radius:.375rem;background-color:var(--inline-code-bg);padding:.125rem .25rem;color:var(--inline-code-color);font-family:var(--font-mono)}.custom-md code:before{content:none}.custom-md code:after{content:none}.custom-md code{counter-reset:line}.custom-md code span.line:before{margin-right:1rem;display:inline-block;width:1rem;color:#ffffff40;content:counter(line);counter-increment:line;direction:rtl}.custom-md code span.line:last-child:empty,.custom-md code span.line:last-child:has(>span:empty:only-child){display:none}.custom-md .copy-btn{all:initial;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1));padding:.5rem 1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.custom-md .copy-btn:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.custom-md .copy-btn{position:absolute;top:.75rem;right:.75rem;z-index:20;height:2rem;width:2rem;cursor:pointer;border-radius:.5rem;font-size:.875rem;line-height:1.25rem;opacity:0;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);--tw-shadow-color: rgb(0 0 0 / .5);--tw-shadow: var(--tw-shadow-colored);transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.custom-md .copy-btn:active{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.custom-md .frame:hover .copy-btn{opacity:1}.custom-md .copy-btn-icon{pointer-events:none;position:absolute;top:50%;left:50%;height:1rem;width:1rem;--tw-translate-x: -50%;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));fill:#fff;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.custom-md .copy-btn .copy-icon{fill:#fff;opacity:1}.custom-md .copy-btn .copy-icon:is(.dark *){fill:#ffffffbf}.custom-md .copy-btn.success .copy-icon{fill:var(--deep-text);opacity:0}.custom-md .copy-btn .success-icon{fill:#fff;opacity:0}.custom-md .copy-btn.success .success-icon{opacity:1}.custom-md .expressive-code{margin-top:1rem;margin-bottom:1rem}.custom-md .expressive-code ::-moz-selection{background-color:var(--codeblock-selection)}.custom-md .expressive-code ::selection{background-color:var(--codeblock-selection)}.custom-md ul li::marker,.custom-md ol li::marker{color:var(--primary)}.custom-md blockquote{position:relative;border-color:transparent;font-style:normal;font-weight:inherit}.custom-md blockquote:before{position:absolute;left:-.25rem;display:block;height:100%;width:.25rem;border-radius:9999px;background-color:var(--btn-regular-bg);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;--tw-content: "";content:var(--tw-content)}.custom-md blockquote p:before,.custom-md blockquote p:after{--tw-content: none;content:var(--tw-content)}.custom-md .katex-display-container{max-width:100%;overflow-x:auto;margin:1em 0}.custom-md .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden}.dark\:prose-invert:is(.dark *){--tw-prose-body: var(--tw-prose-invert-body);--tw-prose-headings: var(--tw-prose-invert-headings);--tw-prose-lead: var(--tw-prose-invert-lead);--tw-prose-links: var(--tw-prose-invert-links);--tw-prose-bold: var(--tw-prose-invert-bold);--tw-prose-counters: var(--tw-prose-invert-counters);--tw-prose-bullets: var(--tw-prose-invert-bullets);--tw-prose-hr: var(--tw-prose-invert-hr);--tw-prose-quotes: var(--tw-prose-invert-quotes);--tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);--tw-prose-captions: var(--tw-prose-invert-captions);--tw-prose-kbd: var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);--tw-prose-code: var(--tw-prose-invert-code);--tw-prose-pre-code: var(--tw-prose-invert-pre-code);--tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);--tw-prose-th-borders: var(--tw-prose-invert-th-borders);--tw-prose-td-borders: var(--tw-prose-invert-td-borders)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:-left-3:before{content:var(--tw-content);left:-.75rem}.before\:left-\[-1\.125rem\]:before{content:var(--tw-content);left:-1.125rem}.before\:left-\[-16px\]:before{content:var(--tw-content);left:-16px}.before\:top-\[0\.33rem\]:before{content:var(--tw-content);top:.33rem}.before\:top-\[0\.75rem\]:before{content:var(--tw-content);top:.75rem}.before\:top-\[5\.5px\]:before{content:var(--tw-content);top:5.5px}.before\:h-4:before{content:var(--tw-content);height:1rem}.before\:h-5:before{content:var(--tw-content);height:1.25rem}.before\:w-1:before{content:var(--tw-content);width:.25rem}.before\:rounded-md:before{content:var(--tw-content);border-radius:.375rem}.before\:bg-\[var\(--primary\)\]:before{content:var(--tw-content);background-color:var(--primary)}.first-of-type\:mt-2:first-of-type{margin-top:.5rem}.focus-within\:bg-black\/\[0\.06\]:focus-within{background-color:#0000000f}.hover\:bg-\[var\(--btn-plain-bg-hover\)\]:hover{background-color:var(--btn-plain-bg-hover)}.hover\:bg-\[var\(--toc-btn-hover\)\]:hover{background-color:var(--toc-btn-hover)}.hover\:bg-black\/70:hover{background-color:#000000b3}.hover\:bg-black\/\[0\.06\]:hover{background-color:#0000000f}.hover\:pl-3:hover{padding-left:.75rem}.hover\:pr-9:hover{padding-right:2.25rem}.hover\:text-\[initial\]:hover{color:initial}.hover\:text-\[var\(--primary\)\]:hover{color:var(--primary)}.focus\:w-60:focus{width:15rem}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[var\(--primary\)\]:focus{--tw-ring-color: var(--primary)}.active\:w-60:active{width:15rem}.active\:scale-90:active{--tw-scale-x: .9;--tw-scale-y: .9;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:scale-\[0\.85\]:active{--tw-scale-x: .85;--tw-scale-y: .85;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:bg-\[var\(--btn-plain-bg-active\)\]:active{background-color:var(--btn-plain-bg-active)}.active\:bg-\[var\(--toc-btn-active\)\]:active{background-color:var(--toc-btn-active)}.active\:bg-black\/80:active{background-color:#000c}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-60:disabled{opacity:.6}.disabled\:hover\:text-inherit:hover:disabled{color:inherit}.group:hover .group-hover\:h-5{height:1.25rem}.group:hover .group-hover\:translate-x-1{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:bg-\[var\(--primary\)\]{background-color:var(--primary)}.group:hover .group-hover\:bg-black\/30{background-color:#0000004d}.group:hover .group-hover\:text-\[var\(--primary\)\]{color:var(--primary)}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:outline-\[var\(--btn-plain-bg-hover\)\]{outline-color:var(--btn-plain-bg-hover)}.group:active .group-active\:bg-black\/50{background-color:#00000080}.group:active .group-active\:text-\[var\(--primary\)\]{color:var(--primary)}.group:active .group-active\:outline-\[var\(--btn-plain-bg-active\)\]{outline-color:var(--btn-plain-bg-active)}.dark\:border-white\/15:is(.dark *){border-color:#ffffff26}.dark\:bg-\[var\(--primary\)\]:is(.dark *){background-color:var(--primary)}.dark\:bg-black\/10:is(.dark *){background-color:#0000001a}.dark\:bg-white\/10:is(.dark *){background-color:#ffffff1a}.dark\:bg-white\/5:is(.dark *){background-color:#ffffff0d}.dark\:text-\[var\(--deep-text\)\]:is(.dark *){color:var(--deep-text)}.dark\:text-black\/70:is(.dark *){color:#000000b3}.dark\:text-neutral-100:is(.dark *){--tw-text-opacity: 1;color:rgb(245 245 245 / var(--tw-text-opacity, 1))}.dark\:text-neutral-300:is(.dark *){--tw-text-opacity: 1;color:rgb(212 212 212 / var(--tw-text-opacity, 1))}.dark\:text-neutral-400:is(.dark *){--tw-text-opacity: 1;color:rgb(163 163 163 / var(--tw-text-opacity, 1))}.dark\:text-neutral-50:is(.dark *){--tw-text-opacity: 1;color:rgb(250 250 250 / var(--tw-text-opacity, 1))}.dark\:text-white\/25:is(.dark *){color:#ffffff40}.dark\:text-white\/30:is(.dark *){color:#ffffff4d}.dark\:text-white\/5:is(.dark *){color:#ffffff0d}.dark\:text-white\/50:is(.dark *){color:#ffffff80}.dark\:text-white\/75:is(.dark *){color:#ffffffbf}.dark\:text-white\/90:is(.dark *){color:#ffffffe6}.dark\:text-white\/\[0\.2\]:is(.dark *){color:#fff3}.dark\:focus-within\:bg-white\/10:focus-within:is(.dark *){background-color:#ffffff1a}.dark\:hover\:bg-white\/10:hover:is(.dark *){background-color:#ffffff1a}.dark\:hover\:text-\[var\(--primary\)\]:hover:is(.dark *){color:var(--primary)}@media (min-width: 768px){.md\:left-\[unset\]{left:unset}.md\:block{display:block}.md\:flex{display:flex}.md\:\!hidden{display:none!important}.md\:w-\[10\%\]{width:10%}.md\:w-\[15\%\]{width:15%}.md\:w-\[30rem\]{width:30rem}.md\:w-\[65\%\]{width:65%}.md\:w-\[80\%\]{width:80%}.md\:max-w-\[65\%\]{max-width:65%}.md\:flex-row{flex-direction:row}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:px-9{padding-left:2.25rem;padding-right:2.25rem}.md\:text-\[2\.25rem\]\/\[2\.75rem\]{font-size:2.25rem;line-height:2.75rem}.md\:before\:w-1:before{content:var(--tw-content);width:.25rem}}@media (min-width: 1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:row-start-1{grid-row-start:1}.lg\:row-end-2{grid-row-end:2}.lg\:mx-0{margin-left:0;margin-right:0}.lg\:mt-0{margin-top:0}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:\!hidden{display:none!important}.lg\:hidden{display:none}.lg\:w-full{width:100%}.lg\:max-w-\[17\.5rem\]{max-width:17.5rem}.lg\:max-w-none{max-width:none}.lg\:grid-rows-\[auto\]{grid-template-rows:auto}.lg\:first-of-type\:mt-0:first-of-type{margin-top:0}}@media (min-width: 1536px){.\32xl\:block{display:block}}.pswp__button{margin-right:0!important;display:flex!important;height:3rem!important;width:3rem!important;align-items:center!important;justify-content:center!important;background-color:#0006!important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter!important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter!important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important;transition-duration:.15s!important}.pswp__button:hover{background-color:#00000080!important}.pswp__button:active{background-color:#0009!important}.pswp__button--zoom,.pswp__button--close{margin-top:1rem!important;border-radius:.75rem!important}.pswp__button--zoom:active,.pswp__button--close:active{--tw-scale-x: .9 !important;--tw-scale-y: .9 !important;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))!important}.pswp__button--zoom{margin-right:.625rem!important}.pswp__button--close{margin-right:1rem!important}.scrollbar-base.os-scrollbar{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;pointer-events:unset}.scrollbar-base.os-scrollbar.os-scrollbar-horizontal{height:1rem;padding:.25rem .5rem}.scrollbar-base.os-scrollbar.os-scrollbar-horizontal .os-scrollbar-track .os-scrollbar-handle{height:.25rem;border-radius:9999px}.scrollbar-base.os-scrollbar.os-scrollbar-horizontal:hover .os-scrollbar-track .os-scrollbar-handle{height:.5rem}.scrollbar-base.os-scrollbar.os-scrollbar-vertical{width:1rem;padding:.25rem}.scrollbar-base.os-scrollbar.os-scrollbar-vertical .os-scrollbar-track .os-scrollbar-handle{width:.25rem;border-radius:9999px}.scrollbar-base.os-scrollbar.os-scrollbar-vertical:hover .os-scrollbar-track .os-scrollbar-handle{width:.5rem}.os-scrollbar.scrollbar-auto{--os-handle-bg: var(--scrollbar-bg);--os-handle-bg-hover: var(--scrollbar-bg-hover);--os-handle-bg-active: var(--scrollbar-bg-active)}.os-scrollbar.scrollbar-dark{--os-handle-bg: var(--scrollbar-bg-dark);--os-handle-bg-hover: var(--scrollbar-bg-hover-dark);--os-handle-bg-active: var(--scrollbar-bg-active-dark)}.os-scrollbar.scrollbar-light{--os-handle-bg: var(--scrollbar-bg-light);--os-handle-bg-hover: var(--scrollbar-bg-hover-light);--os-handle-bg-active: var(--scrollbar-bg-active-light)}html.is-changing .transition-swup-fade{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}html.is-animating .transition-swup-fade{--tw-translate-y: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0}@keyframes fade-in-up{0%{transform:translateY(2rem);opacity:0}to{transform:translateY(0);opacity:1}}.onload-animation{opacity:0;animation:.3s fade-in-up;animation-fill-mode:forwards}#navbar{animation-delay:0ms}#sidebar{animation-delay:.1s}#swup-container{outline:none}#content-wrapper{animation-delay:var(--content-delay)}.footer{animation-delay:.25s}#banner-credit{animation-delay:.4s}#post-container :nth-child(1){animation-delay:calc(var(--content-delay) + 0ms)}#post-container :nth-child(2){animation-delay:calc(var(--content-delay) + 50ms)}#post-container :nth-child(3){animation-delay:calc(var(--content-delay) + .1s)}#post-container :nth-child(4){animation-delay:calc(var(--content-delay) + 175ms)}#post-container :nth-child(5){animation-delay:calc(var(--content-delay) + .25s)}#post-container :nth-child(6){animation-delay:calc(var(--content-delay) + 325ms)}:root{--radius-large: 1rem;--radius-card: .9rem;--radius-control: .6rem;--surface: var(--card-bg);--border-subtle: var(--border-soft);--radius-sm: .4rem;--radius-md: var(--radius-control);--radius-lg: var(--radius-card);--shadow-sm: 0 12px 30px -26px rgba(30,59,82,.28);--shadow-md: var(--card-shadow);--space-xs: .375rem;--space-sm: .625rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.25rem;--content-delay: .15s;--accent-color: #1264e8;--premium-accent-slider: linear-gradient(to right, #0D4FC7 0%, #1264E8 20%, #2488FF 40%, #43D7FF 60%, #5B70FF 80%, #8178FF 100%)}:root.dark{--accent-color: #43d7ff;--premium-accent-slider: linear-gradient(to right, #0D4FC7 0%, #1264E8 20%, #2488FF 40%, #43D7FF 60%, #5B70FF 80%, #8178FF 100%)}:root{--bg-deep: #e6edf0;--bg-base: #f6f7f5;--bg-elevated: #f1f4f5;--bg-soft: #eaf0f3;--primary: var(--accent-color);--theme-accent: var(--accent-color);--accent-hover: #2488ff;--theme-accent-hover: var(--accent-hover);--text-on-accent: #fff;--theme-accent-soft: color-mix(in srgb, var(--accent-color) 9%, #F6F7F5);--theme-accent-border: color-mix(in srgb, var(--accent-color) 28%, rgba(43, 78, 108, .14));--theme-accent-text: color-mix(in srgb, var(--accent-color) 88%, #091827);--text-primary: #101923;--text-secondary: #526475;--text-muted: #718597;--text-subtle: #8a9aa8;--page-bg: var(--bg-base);--card-bg: rgba(241,244,245,.56);--surface-transparent: rgba(241,244,245,.42);--surface-hover: rgba(250,252,252,.82);--control-bg: rgba(234,240,243,.72);--surface-2: var(--bg-soft);--card-border: rgba(65,101,130,.11);--card-shadow: none;--card-shadow-hover: 0 0 38px rgba(18, 100, 232, .045);--card-bg-hover: var(--surface-hover);--card-media-bg: var(--surface-2);--surface-elevated: var(--bg-elevated);--border-soft: rgba(65,101,130,.11);--border-default: rgba(65,101,130,.14);--border-hover: rgba(36,136,255,.28);--border-strong: rgba(65,101,130,.2);--gold: var(--accent-color);--card-accent-consulting: var(--accent-color);--card-accent-industrial: var(--accent-color);--card-accent-self: var(--accent-color);--card-accent-healthcare: var(--accent-color);--card-accent-ai: var(--accent-color);--card-accent-incident: var(--accent-color);--card-accent-telecom: var(--accent-color);--card-accent-predictive: var(--accent-color);--btn-content: var(--accent-color);--action-primary-bg: rgba(18,100,232,.08);--action-primary-bg-hover: rgba(18,100,232,.13);--action-primary-border: rgba(18,100,232,.24);--action-primary-border-hover: rgba(18,100,232,.38);--action-primary-text: #123f6b;--link-default: #496a83;--chip-bg: rgba(65,101,130,.025);--metric-bg: rgba(36,136,255,.025);--image-edge-overlay: linear-gradient(to bottom, rgba(3, 8, 14, .08), transparent 22%, transparent 72%, rgba(3, 8, 14, .32)), linear-gradient(90deg, rgba(3, 8, 14, .1), transparent 12%, transparent 88%, rgba(3, 8, 14, .1));--btn-regular-bg: color-mix(in srgb, var(--accent-color) 8%, #FBFCFC);--btn-regular-bg-hover: color-mix(in srgb, var(--accent-color) 13%, #FBFCFC);--btn-regular-bg-active: color-mix(in srgb, var(--accent-color) 18%, #FBFCFC);--btn-plain-bg-hover: color-mix(in srgb, var(--accent-color) 8%, #F6F7F5);--btn-plain-bg-active: color-mix(in srgb, var(--accent-color) 12%, #F6F7F5);--btn-card-bg-hover: color-mix(in srgb, var(--accent-color) 7%, #F6F7F5);--btn-card-bg-active: color-mix(in srgb, var(--accent-color) 14%, #F6F7F5);--enter-btn-bg: var(--btn-regular-bg);--enter-btn-bg-hover: var(--btn-regular-bg-hover);--enter-btn-bg-active: var(--btn-regular-bg-active);--deep-text: #07111d;--title-active: var(--accent-hover);--line-divider: rgba(65,101,130,.1);--line-color: rgba(65,101,130,.1);--meta-divider: #8797a5;--inline-code-bg: var(--btn-regular-bg);--inline-code-color: var(--btn-content);--selection-bg: color-mix(in srgb, var(--accent-color) 18%, #F6F7F5);--codeblock-selection: color-mix(in srgb, var(--accent-color) 34%, #091827);--codeblock-bg: #091827;--codeblock-topbar-bg: #0e1c2b;--license-block-bg: rgba(16,24,40,.04);--link-underline: color-mix(in srgb, var(--accent-color) 24%, white);--link-hover: var(--accent-hover);--link-active: var(--accent-color);--float-panel-bg: rgba(246,249,250,.96);--scrollbar-bg-light: rgba(0,0,0,.4);--scrollbar-bg-hover-light: rgba(0,0,0,.5);--scrollbar-bg-active-light: rgba(0,0,0,.6);--scrollbar-bg-dark: rgba(255,255,255,.4);--scrollbar-bg-hover-dark: rgba(255,255,255,.5);--scrollbar-bg-active-dark: rgba(255,255,255,.6);--scrollbar-bg: var(--scrollbar-bg-light);--scrollbar-bg-hover: var(--scrollbar-bg-hover-light);--scrollbar-bg-active: var(--scrollbar-bg-active-light);--color-selection-bar: linear-gradient(to right, #0D4FC7 0%, #1264E8 20%, #2488FF 40%, #43D7FF 60%, #5B70FF 80%, #8178FF 100%);--display-light-icon: 1;--display-dark-icon: 0;--admonitions-color-tip: #0f766e;--admonitions-color-note: #1e3a5f;--admonitions-color-important: #5b4b8a;--admonitions-color-warning: #9a6414;--admonitions-color-caution: #7f1d3a;--toc-badge-bg: var(--btn-regular-bg);--toc-btn-hover: color-mix(in srgb, var(--accent-color) 10%, #F6F7F5);--toc-btn-active: color-mix(in srgb, var(--accent-color) 16%, #F6F7F5);--toc-width: calc((100vw - var(--page-width)) / 2 - 1rem);--toc-item-active: var(--accent-color)}:root.dark{--bg-deep: #03080e;--bg-base: #050c14;--bg-elevated: #08121d;--bg-soft: #0a1723;--primary: var(--accent-color);--theme-accent: var(--accent-color);--accent-hover: #73e4ff;--theme-accent-hover: var(--accent-hover);--text-on-accent: #03111c;--theme-accent-soft: rgba(67,215,255,.075);--theme-accent-border: rgba(91,205,242,.28);--theme-accent-text: #73e4ff;--text-primary: #f4f8fb;--text-secondary: #9aafc0;--text-muted: #6c849a;--text-subtle: #5e778c;--page-bg: var(--bg-base);--card-bg: rgba(8,18,29,.38);--surface-transparent: rgba(8,18,29,.38);--surface-hover: rgba(10,23,35,.7);--control-bg: rgba(8,18,29,.68);--surface-2: var(--bg-soft);--card-border: rgba(123,181,218,.1);--card-shadow: none;--card-shadow-hover: 0 0 40px rgba(67, 215, 255, .055);--card-bg-hover: var(--surface-hover);--card-media-bg: var(--surface-2);--surface-elevated: var(--bg-elevated);--border-soft: rgba(123,181,218,.1);--border-default: rgba(123,181,218,.14);--border-hover: rgba(67,215,255,.3);--border-strong: rgba(123,181,218,.18);--gold: var(--accent-color);--card-accent-consulting: var(--accent-color);--card-accent-industrial: var(--accent-color);--card-accent-self: var(--accent-color);--card-accent-healthcare: var(--accent-color);--card-accent-ai: var(--accent-color);--card-accent-incident: var(--accent-color);--card-accent-telecom: var(--accent-color);--card-accent-predictive: var(--accent-color);--btn-content: var(--accent-color);--action-primary-bg: rgba(8,31,50,.92);--action-primary-bg-hover: rgba(10,40,62,.96);--action-primary-border: rgba(67,215,255,.22);--action-primary-border-hover: rgba(67,215,255,.36);--action-primary-text: #f4f8fb;--link-default: #8aa6bc;--chip-bg: rgba(8,18,29,.18);--metric-bg: rgba(36,136,255,.025);--image-edge-overlay: linear-gradient(to bottom, rgba(3, 8, 14, .16), transparent 22%, transparent 68%, rgba(3, 8, 14, .52)), linear-gradient(90deg, rgba(3, 8, 14, .16), transparent 12%, transparent 88%, rgba(3, 8, 14, .16));--btn-regular-bg: rgba(52,135,255,.11);--btn-regular-bg-hover: rgba(69,216,255,.14);--btn-regular-bg-active: rgba(69,216,255,.18);--btn-plain-bg-hover: rgba(69,216,255,.09);--btn-plain-bg-active: rgba(69,216,255,.13);--btn-card-bg-hover: rgba(52,135,255,.11);--btn-card-bg-active: rgba(69,216,255,.16);--deep-text: #03111c;--title-active: var(--accent-hover);--line-divider: rgba(123,181,218,.085);--line-color: rgba(123,181,218,.085);--meta-divider: #5e788d;--selection-bg: rgba(69,216,255,.24);--codeblock-selection: rgba(52,135,255,.38);--codeblock-bg: #07111d;--codeblock-topbar-bg: #0b1522;--license-block-bg: var(--codeblock-bg);--link-underline: rgba(67,215,255,.24);--link-hover: var(--accent-hover);--link-active: var(--accent-color);--float-panel-bg: rgba(5,12,20,.96);--scrollbar-bg: var(--scrollbar-bg-dark);--scrollbar-bg-hover: var(--scrollbar-bg-hover-dark);--scrollbar-bg-active: var(--scrollbar-bg-active-dark);--color-selection-bar: linear-gradient(to right, #0D4FC7 0%, #1264E8 20%, #2488FF 40%, #43D7FF 60%, #5B70FF 80%, #8178FF 100%);--display-light-icon: 0;--display-dark-icon: 1;--admonitions-color-tip: #43d7ff;--admonitions-color-note: #2488ff;--admonitions-color-important: #8178ff;--admonitions-color-warning: #64b5f6;--admonitions-color-caution: #596bff;--toc-badge-bg: var(--btn-regular-bg);--toc-btn-hover: rgba(69,216,255,.1);--toc-btn-active: rgba(52,135,255,.16);--toc-item-active: var(--accent-color)}
