.md{max-width:100%;min-width:0;overflow-wrap:break-word;font-family:var(--font-serif),Georgia,serif;font-optical-sizing:auto}.md .md-p{font-size:18px;margin:1em 0;line-height:1.7}.md .md-heading{font-weight:600;line-height:1.35;margin:2.35em 0 .75em;letter-spacing:-.01em}.md .md-h1{font-size:clamp(1.55rem,2vw,1.85rem);font-weight:700;margin-top:1.8em;padding-bottom:.3em;border-bottom:1px solid hsl(var(--border))}.md .md-h2{font-size:clamp(1.4rem,1.8vw,1.65rem);margin-top:2.7em}.md .md-h3{font-size:clamp(1.15rem,1.4vw,1.3rem);margin-top:2.5em}.md .md-h4{font-size:1.05rem;font-weight:600}.md .md-h5{font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.md .md-h6{font-size:.9rem;font-weight:600;color:hsl(var(--muted-foreground))}.md .md-section-number{margin-right:.35em;font-variant-numeric:tabular-nums}.md .md-heading a:not(.anchor-link){color:inherit;text-decoration:none;font-weight:inherit}.md .md-heading{position:relative}.md .md-heading a.anchor-link{position:absolute;left:-1.4rem;top:50%;transform:translateY(-50%);opacity:0;font-size:.85em;color:hsl(var(--link));text-decoration:none;transition:opacity .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.md .md-heading a.anchor-link:before{content:"#"}.md .md-heading:hover a.anchor-link{opacity:.55}.md .md-heading a.anchor-link:hover{opacity:1}.md .md-strong{color:var(--strong);font-weight:600}.md .md-em{font-style:italic}.md .md-a{color:hsl(var(--link));text-decoration:underline;text-decoration-color:hsl(var(--link)/.35);text-decoration-thickness:1px;text-underline-offset:.18em;transition:text-decoration-color .15s ease}.md .md-a:hover{text-decoration-color:currentColor}.md .md-ul{padding-left:3rem;margin:.8rem 0;list-style-type:disc;li::marker{color:var(--muted-foreground)}}.md .md-ol{padding-left:3rem;margin:.8rem 0}.md .md-li{margin:.25rem 0}.md .md-li>.md-ol,.md .md-li>.md-ul{margin-top:.25rem;padding-left:1.6rem}.md p+ol,.md p+ul{margin-top:.6rem}.md ol ol,.md ul ul{margin-top:.25rem;padding-left:1.2rem}.md .md-blockquote{margin:1.5rem 0;padding:.1rem 0 .1rem 1.25rem;border-left:2px solid hsl(var(--border));font-style:italic;color:hsl(var(--muted-foreground))}.md .md-blockquote .md-p{margin:.5em 0;color:inherit}.md .md-blockquote .md-p:first-child{margin-top:0}.md .md-blockquote .md-p:last-child{margin-bottom:0}.md .md-definition{margin:2rem 0;padding:1rem 1.25rem;background:hsl(var(--muted)/.6);border-left:3px solid hsl(var(--primary));border-radius:0 .375rem .375rem 0;color:hsl(var(--foreground))}.md .md-definition-title{font-weight:700;color:hsl(var(--primary))}.md .md-definition .md-p{margin:.65em 0}.md .md-definition .md-p:first-child{margin-top:0}.md .md-definition .md-p:last-child{margin-bottom:0}.md .md-definition .katex-display{margin:.75rem 0 .4rem}.md .md-takeaway{position:relative;margin:2.5rem 0;padding:1.5rem 1.75rem;border-left:3px solid hsl(var(--foreground)/.6);font-size:1.2rem;font-weight:600;line-height:1.5;color:hsl(var(--foreground))}.md .md-takeaway .md-p{margin:0}.md .md-takeaway .md-p+.md-p{margin-top:.75rem}.md{--table-header-bg:#f1f5f9;--table-row-alt-bg:#fafafa}.md .md-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.25rem 0}.md .md-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem;text-align:left}.md .md-thead .md-th{background:rgba(0,0,0,.03);font-weight:600;font-size:.875rem;color:hsl(var(--foreground));padding:.5rem .85rem;border-bottom:2px solid rgba(0,0,0,.1);white-space:nowrap}.dark .md .md-thead .md-th{background:hsla(0,0%,100%,.03);border-bottom-color:hsla(0,0%,100%,.1)}.md .md-thead .md-tr:first-child .md-th:first-child{border-top-left-radius:.9rem}.md .md-thead .md-tr:first-child .md-th:last-child{border-top-right-radius:.9rem}.md .md-td{padding:.45rem .85rem;border-bottom:1px solid rgba(0,0,0,.06);vertical-align:top;line-height:1.5}.dark .md .md-td{border-bottom-color:hsla(0,0%,100%,.05)}.md .md-tbody .md-tr:last-child .md-td{border-bottom:none}.md .md-tbody .md-tr:hover .md-td{background:rgba(0,0,0,.02)}.dark .md .md-tbody .md-tr:hover .md-td{background:hsla(0,0%,100%,.02)}.md code:not(.md-code-block){font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.92em;padding:.15em .35em;border-radius:.35rem;background:hsl(var(--muted));color:hsl(var(--foreground))}.code-block{margin:1.75rem 0;border:1px solid hsl(var(--code-border));border-radius:.5rem;overflow:hidden;background:hsl(var(--code-bg));color-scheme:dark}.code-block-header{display:flex;align-items:center;gap:.75rem;min-height:2.25rem;padding:.25rem .375rem .25rem 1rem;border-bottom:1px solid hsl(var(--code-divider))}.traffic-lights{display:flex;gap:.5rem}.traffic-lights .light{width:12px;height:12px;border-radius:50%;box-shadow:inset 0 -1px 2px rgba(0,0,0,.2)}.traffic-lights .light-red{background:linear-gradient(180deg,#ff5f57,#e0443e)}.traffic-lights .light-yellow{background:linear-gradient(180deg,#ffbd2e,#dea123)}.traffic-lights .light-green{background:linear-gradient(180deg,#28c940,#1aab29)}.code-block-lang{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.75rem;color:hsl(var(--code-muted));-webkit-user-select:none;-moz-user-select:none;user-select:none}.code-block .copy-btn{position:relative;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;margin-left:auto;border:0;border-radius:.375rem;background:transparent;color:hsl(var(--code-muted));cursor:pointer;transition:background-color .15s ease,color .15s ease}.code-block .copy-btn:hover{background:hsla(0,0%,100%,.08);color:hsl(var(--code-fg))}.code-block .copy-btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:1px}.code-block .copy-btn:before{content:"";width:14px;height:14px;background-color:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='13' height='13' rx='2' ry='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='13' height='13' rx='2' ry='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E") center /contain no-repeat}.code-block .copy-btn:after{content:attr(data-tooltip);position:absolute;top:50%;right:calc(100% + .375rem);transform:translateY(-50%);padding:.15rem .5rem;border-radius:.25rem;background:hsl(var(--code-divider));color:hsl(var(--code-fg));font-family:ui-sans-serif,system-ui,sans-serif;font-size:.75rem;line-height:1.5;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s ease}.code-block .copy-btn.copied:after,.code-block .copy-btn:focus-visible:after,.code-block .copy-btn:hover:after{opacity:1}.code-block .copy-btn.copied{color:#4ade80}.code-block .copy-btn.copied:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E")}.code-block pre{margin:0;padding:.9rem 1rem;overflow-x:auto;border:0;border-radius:0;background:transparent!important;scrollbar-color:hsl(var(--code-muted)/.4) transparent}.code-block pre code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.875rem;line-height:1.65}.md .md-img{max-width:100%;height:auto;display:block}.md .image-loading-wrapper,.md .md-img{width:100%;margin-block:1.75rem;margin-left:auto;margin-right:auto}.md .image-loading-wrapper{max-width:82%}@media (min-width:768px){.md .md-img{max-width:82%}}@media (max-width:767px){.md .image-loading-wrapper{max-width:100%}}.dark .md{--strong:#fff;--table-header-bg:#111827;--table-row-alt-bg:#0f172a}.md img{filter:invert(0)}.dark .md img{filter:invert(.9) hue-rotate(180deg) saturate(1.2) contrast(1.05)}.md-details{margin-block:2rem;border-radius:.625rem;border:1px solid rgba(0,0,0,.08);background:rgba(0,0,0,.02);overflow:hidden;transition:box-shadow .2s ease}.dark .md-details{border-color:hsla(0,0%,100%,.07);background:hsla(0,0%,100%,.025)}.md-details:hover{box-shadow:0 2px 12px rgba(0,0,0,.06)}.dark .md-details:hover{box-shadow:0 2px 12px rgba(0,0,0,.3)}.md-details>summary{display:flex;align-items:center;gap:.6rem;padding:.9rem 1.1rem;cursor:pointer;font-weight:600;font-size:.95rem;list-style:none;outline:none;border-left:3px solid transparent;transition:border-color .15s ease,background .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.md-details>summary::-webkit-details-marker{display:none}.md-details>summary:hover{background:rgba(0,0,0,.025);border-left-color:var(--primary,#93c5fd)}.dark .md-details>summary:hover{background:hsla(0,0%,100%,.03)}.md-details>summary:before{content:"";display:inline-block;flex-shrink:0;width:1em;height:1em;background-color:currentColor;opacity:.5;transition:transform .2s ease,opacity .2s ease;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.md-details[open]>summary{border-left-color:var(--primary,#93c5fd);border-bottom:1px solid rgba(0,0,0,.07)}.dark .md-details[open]>summary{border-bottom-color:hsla(0,0%,100%,.06)}.md-details[open]>summary:before{transform:rotate(90deg);opacity:.8}.md-details:not(.md-alert)>:not(summary){padding:0 4rem}.md-details:not(.md-alert)>summary+*{padding-top:2rem}.md-details:not(.md-alert)>:not(summary):last-child{padding-bottom:4rem}.md-details:not(.md-alert) .md-table-wrapper{margin:.5rem 0;border-left:none;border-right:none;border-radius:0}.md-details:not(.md-alert) .md-hr,.md-details:not(.md-alert) hr{margin-top:1rem;margin-bottom:1rem;margin-inline:4rem;border-color:rgba(0,0,0,.08)}.dark .md-details:not(.md-alert) .md-hr,.dark .md-details:not(.md-alert) hr{border-color:hsla(0,0%,100%,.07)}.md-details:not(.md-alert) .md-ol,.md-details:not(.md-alert) .md-ul{padding-left:6rem}.md-details:not(.md-alert) .md-p{margin:.4em 0}.md-details:not(.md-alert) .md-heading{margin:.75em 0 .35em}.md-hr-strong{margin:7rem 0;text-align:center}.md-hr-dots:before{content:"• • •";letter-spacing:.6rem;font-size:1.2rem;opacity:.45}:root{--hr-strong-color:currentColor}.dark .md-hr-dots:before{opacity:.55}.md-alert{max-width:100%;min-width:0;margin:2.5rem 0;padding:0;border-radius:0 .375rem .375rem 0;border-left:3px solid hsl(var(--callout));background:hsl(var(--callout)/var(--callout-fill));overflow:hidden;--callout:var(--callout-neutral)}.md-alert .md-alert-title{color:hsl(var(--callout))}.md-alert>summary.md-alert-title{font-weight:600;padding:.75rem 1rem;display:flex;align-items:center;gap:.5rem;cursor:pointer;list-style:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.md-alert>summary.md-alert-title::-webkit-details-marker{display:none}.md-alert>summary.md-alert-title:after{content:"▸";margin-left:auto;transition:transform .2s ease;opacity:.5}.md-alert[open]>summary.md-alert-title:after{transform:rotate(90deg)}.md-alert>summary.md-alert-title:before{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;background-color:transparent;opacity:1;-webkit-mask-image:none;mask-image:none;font-size:1.1rem;flex-shrink:0;transform:none!important}.md-alert>:not(summary){max-width:100%;min-width:0;padding:0 1rem}.md-alert>:last-child{padding-bottom:1rem}.md-alert-example,.md-alert-note{--callout:var(--callout-neutral)}.md-alert-important{--callout:var(--callout-info)}.md-alert-tip{--callout:var(--callout-success)}.md-alert-exercise{--callout:var(--callout-violet)}.md-alert-warning{--callout:var(--callout-warning)}.md-alert-caution{--callout:var(--callout-danger)}.md-alert-note .md-alert-title:before{content:"ℹ";font-style:normal;font-size:.95rem}.md-alert-tip .md-alert-title:before{content:"✦";font-size:.8rem}.md-alert-important .md-alert-title:before{content:"!";font-weight:700;font-style:normal;font-size:1rem}.md-alert-warning .md-alert-title:before{content:"△";font-size:.9rem}.md-alert-caution .md-alert-title:before{content:"⊗";font-size:.95rem}.md-alert-exercise .md-alert-title:before{content:"#";font-weight:700;font-size:.9rem}.md-alert-example .md-alert-title:before{content:"=";font-weight:700;font-size:.95rem}.md-alert .md-p:last-child{margin-bottom:0}.md-iframe-window{position:relative;width:100%;max-width:100%;min-width:0;overflow:hidden}.md-iframe-window iframe{display:block;width:100%;max-width:100%;border:none;border-radius:.75rem;background:transparent}.dark .md-iframe-window iframe{background:#fcfcfc;filter:invert(.9) hue-rotate(180deg) saturate(1.2) contrast(1.05)}.md .katex{font-size:1.2em}.md .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:.35em 0;margin:2.15rem 0}.md .content-diagram{--diagram-line:rgba(14,116,144,.3);margin:2rem 0;padding:.5rem 0;text-align:center}.md .content-diagram__block{box-sizing:border-box;padding:.65rem 1.15rem;border:1px solid rgba(14,116,144,.2);border-radius:.75rem;background:linear-gradient(135deg,rgba(14,165,164,.08),rgba(99,102,241,.06));box-shadow:0 5px 14px rgba(15,23,42,.06);color:#0f172a;font-size:.92rem;font-weight:600;line-height:1.35}.md .content-diagram__block .md-p{margin:0;font-size:inherit;line-height:inherit}.md .content-diagram__block .md-p+.md-p{margin-top:.4rem}.md .content-diagram__block--start{border-color:rgba(79,70,229,.26);background:linear-gradient(135deg,rgba(99,102,241,.13),rgba(139,92,246,.08))}.md .content-diagram__block--end,.md .content-diagram__block--positive{border-color:rgba(13,148,136,.3);background:linear-gradient(135deg,rgba(20,184,166,.15),rgba(45,212,191,.08))}.md .content-diagram__block--source{border-color:rgba(14,116,144,.26);border-radius:999px;background:linear-gradient(135deg,rgba(14,165,164,.11),rgba(99,102,241,.08))}.md .content-diagram__block--neutral{border-color:rgba(79,70,229,.25);background:linear-gradient(135deg,rgba(99,102,241,.11),rgba(129,140,248,.06))}.md .content-diagram__block--warning{border-color:rgba(217,119,6,.27);background:linear-gradient(135deg,rgba(245,158,11,.13),rgba(251,191,36,.06))}.md .content-diagram--flow{display:flex;flex-direction:column;align-items:center}.md .content-diagram--flow>.content-diagram__block{position:relative;width:min(100%,22rem)}.md .content-diagram--flow>.content-diagram__block+.content-diagram__block{margin-top:1.9rem}.md .content-diagram--flow>.content-diagram__block+.content-diagram__block:before{position:absolute;bottom:calc(100% + .3rem);left:50%;color:#0e7490;content:"↓";font-size:1.15rem;font-weight:500;line-height:1;transform:translateX(-50%)}.md .content-diagram--compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:stretch;text-align:left}.md .content-diagram--compare>.content-diagram__block{height:100%;padding:.9rem 1rem;font-weight:500}.md .content-diagram--compare>.content-diagram__block .md-p:first-child{color:#334155;font-size:.82rem;font-weight:700;letter-spacing:.025em}.md .content-diagram--branch>.content-diagram__block:first-child{position:relative;display:inline-block}.md .content-diagram--branch>.content-diagram__block:first-child:after{position:absolute;top:100%;left:50%;width:1px;height:1.8rem;background:var(--diagram-line);content:""}.md .content-diagram__branch{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.8rem}.md .content-diagram__branch:before{position:absolute;top:0;left:16.667%;width:66.666%;height:1px;background:var(--diagram-line);content:""}.md .content-diagram__branch>.content-diagram__block{position:relative;margin-top:1rem;padding:.8rem .75rem}.md .content-diagram__branch>.content-diagram__block:before{position:absolute;bottom:100%;left:50%;width:1px;height:1rem;background:var(--diagram-line);content:""}.md .content-diagram__branch>.content-diagram__block .md-p:first-child{color:#334155;font-size:.78rem;font-weight:700;letter-spacing:.025em}.dark .md .content-diagram{--diagram-line:rgba(94,234,212,.28)}.dark .md .content-diagram__block{border-color:rgba(94,234,212,.2);background:linear-gradient(135deg,rgba(45,212,191,.1),rgba(129,140,248,.09));box-shadow:0 5px 14px rgba(0,0,0,.16);color:#e2e8f0}.dark .md .content-diagram__block--start{border-color:rgba(165,180,252,.32);background:linear-gradient(135deg,rgba(99,102,241,.22),rgba(139,92,246,.13))}.dark .md .content-diagram__block--end,.dark .md .content-diagram__block--positive{border-color:rgba(94,234,212,.34);background:linear-gradient(135deg,rgba(20,184,166,.2),rgba(45,212,191,.1))}.dark .md .content-diagram__block--source{border-color:rgba(94,234,212,.25);background:linear-gradient(135deg,rgba(45,212,191,.13),rgba(129,140,248,.1))}.dark .md .content-diagram__block--neutral{border-color:rgba(165,180,252,.3);background:linear-gradient(135deg,rgba(99,102,241,.18),rgba(129,140,248,.09))}.dark .md .content-diagram__block--warning{border-color:rgba(252,211,77,.3);background:linear-gradient(135deg,rgba(245,158,11,.17),rgba(251,191,36,.07))}.dark .md .content-diagram--compare>.content-diagram__block .md-p:first-child,.dark .md .content-diagram__branch>.content-diagram__block .md-p:first-child{color:#cbd5e1}.dark .md .content-diagram--flow>.content-diagram__block+.content-diagram__block:before{color:#5eead4}@media (max-width:640px){.md .content-diagram--compare{grid-template-columns:1fr;gap:.7rem}.md .content-diagram--branch>.content-diagram__block:first-child:after{height:1.35rem}.md .content-diagram__branch{grid-template-columns:1fr;gap:.7rem;margin-top:1.35rem}.md .content-diagram__branch:before{display:none}.md .content-diagram__branch>.content-diagram__block{margin-top:.7rem}.md .content-diagram__branch>.content-diagram__block:before{height:.7rem}}