.tw-util-ch[data-v-94b45222]{--ease-out:cubic-bezier(.16,1,.3,1);line-height:1.5;scroll-behavior:smooth}.tw-util-ch[data-v-def38502]{--ease-out:cubic-bezier(.16,1,.3,1);line-height:1.5;scroll-behavior:smooth}.tw-util-ch[data-v-137fdb44]{--ease-out:cubic-bezier(.16,1,.3,1);line-height:1.5;scroll-behavior:smooth}.tw-util-ch[data-v-1e67ec55]{line-height:1.5;scroll-behavior:smooth}.tw-util-ch[data-v-475de3bf]{line-height:1.5;scroll-behavior:smooth}.flow-line[data-v-475de3bf]{background:linear-gradient(90deg,transparent,rgba(255,0,0,.15),transparent);left:0}@keyframes pyFlowMove-475de3bf{0%{transform:translate(-100%)}to{transform:translate(100vw)}}.term-row[data-v-475de3bf]:hover{background:#00000005}.term-row:hover .term-cn[data-v-475de3bf]{color:red}.compare-row[data-v-475de3bf]:hover{background:#ff000008}.error-card[data-v-475de3bf]{transition:transform .3s cubic-bezier(.16,1,.3,1)}.error-card[data-v-475de3bf]:hover{transform:translate(6px)}.tw-util-ch .swiss-heading{font-weight:900;letter-spacing:-.04em;line-height:.9}.tw-util-ch .swiss-label{font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.tw-util-ch .sh{font-weight:900;letter-spacing:-.04em;line-height:.9}.tw-util-ch .sl{font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}.tw-util-ch .reveal-item{opacity:1}@media (prefers-reduced-motion:no-preference){.tw-util-ch .reveal-item{opacity:0;transform:translateY(30px);transition:opacity .8s var(--ease-out,cubic-bezier(.16,1,.3,1)),transform .8s var(--ease-out,cubic-bezier(.16,1,.3,1))}.tw-util-ch .reveal-item.revealed{opacity:1;transform:translateY(0)}}.tw-util-ch .stagger-1{transition-delay:.1s}.tw-util-ch .stagger-2{transition-delay:.2s}.tw-util-ch .code-block{background:#0a0a0a;color:#e0e0e0;font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.75;overflow-x:auto;-moz-tab-size:2;-o-tab-size:2;tab-size:2;white-space:pre-wrap;word-break:break-word}.tw-util-ch .code-block .vue-tag{color:#42b883}.tw-util-ch .code-block .vue-attr{color:#f66}.tw-util-ch .code-block .str{color:#fff}.tw-util-ch .code-block .cm{color:#555}.tw-util-ch .code-block .kw,.tw-util-ch .code-block .num{color:red}.tw-util-ch .code-block .css-sel{color:#e0e0e0}.tw-util-ch .code-block .css-prop{color:#00dc82}.tw-util-ch .code-block .css-val{color:#f66}.tw-util-ch .code-block .er{color:#f66;font-style:italic}@media (prefers-reduced-motion:no-preference){.tw-ch02-bp1{animation:tw-ch02-bp 4s ease-in-out infinite}.tw-ch02-bp2{animation:tw-ch02-bp 4s ease-in-out .8s infinite}.tw-ch02-bp3{animation:tw-ch02-bp 4s ease-in-out 1.6s infinite}.tw-ch02-bp4{animation:tw-ch02-bp 4s ease-in-out 2.4s infinite}}@keyframes tw-ch02-bp{0%,to{opacity:.2}50%{opacity:.5}}@media (prefers-reduced-motion:no-preference){.tw-hero-nd{animation:tw-hero-nd 5s ease-in-out infinite}}@keyframes tw-hero-nd{0%,to{opacity:.25;transform:scale(1)}50%{opacity:.7;transform:scale(1.03)}}.tw-util-ch.py-learn-path .py-block{background:#0a0a0a;color:#e0e0e0;font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.8;overflow-x:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.tw-util-ch.py-learn-path .py-block .py-kw{color:#f66}.tw-util-ch.py-learn-path .py-block .py-fn{color:#42b883}.tw-util-ch.py-learn-path .py-block .py-st{color:#ff9f43}.tw-util-ch.py-learn-path .py-block .py-cm{color:#555}.tw-util-ch.py-learn-path .py-block .py-nb{color:#fff}.tw-util-ch.py-learn-path .py-block .py-bi{color:#f66}.tw-util-ch.py-learn-path .py-block .py-an{color:#42b883}.tw-util-ch.py-learn-path .py-block .py-op{color:#888}.tw-util-ch.py-learn-path .py-block .py-dc{color:#f66}@media (prefers-reduced-motion:no-preference){.py-vc1{animation:py-vp 4s ease-in-out infinite}.py-vc2{animation:py-vp 4s ease-in-out .5s infinite}.py-vc3{animation:py-vp 4s ease-in-out 1s infinite}.py-vc4{animation:py-vp 4s ease-in-out 1.5s infinite}.py-vc5{animation:py-vp 4s ease-in-out 2s infinite}.py-vc6{animation:py-vp 4s ease-in-out 2.5s infinite}}@keyframes py-vp{0%,to{opacity:.15;transform:scale(1)}50%{opacity:.4;transform:scale(1.02)}}.tw-util-ch.py-learn-handbook .syn-kw{color:red;font-weight:500}.tw-util-ch.py-learn-handbook .syn-str{color:#16a34a}.tw-util-ch.py-learn-handbook .syn-cmt{color:#737373;font-style:italic}.tw-util-ch.py-learn-handbook .syn-fn{color:#2563eb}.tw-util-ch.py-learn-handbook .syn-cls{color:#9333ea}.tw-util-ch.py-learn-handbook .syn-num{color:#ea580c}.tw-util-ch.py-learn-handbook .syn-decor{color:#0891b2}.tw-util-ch.py-learn-handbook .grid-12{display:grid;gap:24px;grid-template-columns:repeat(12,1fr)}.tw-util-ch.py-learn-handbook .tree-node:hover .node-name{color:red}.tw-util-ch.py-learn-handbook .swiss-display{font-weight:900;letter-spacing:-.04em;line-height:.92}@media (prefers-reduced-motion:no-preference){.py-pulse-dot{animation:py-pd 2s ease-in-out infinite}.py-code-wave{animation:py-cw 3s ease-in-out infinite}}@keyframes py-pd{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}@keyframes py-cw{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}
