.dash[data-astro-cid-puespqtd]{margin-top:clamp(28px,4vh,40px)}.dash-bar[data-astro-cid-puespqtd]{border:1px solid var(--line-strong);border-radius:var(--radius) var(--radius) 0 0;background:#130f1feb;border-bottom:0;align-items:center;gap:14px;min-height:46px;padding:6px 14px;display:flex}.dash-dots[data-astro-cid-puespqtd]{flex:none;gap:6px;display:flex}.dash-dots[data-astro-cid-puespqtd] i[data-astro-cid-puespqtd]{background:var(--line-strong);border-radius:50%;width:9px;height:9px}.dash-title[data-astro-cid-puespqtd]{min-width:0;font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;color:var(--text-muted);font-size:.85rem;font-weight:500;overflow:hidden}.dash-tabs[data-astro-cid-puespqtd]{scrollbar-width:none;gap:4px;min-width:0;display:flex;overflow-x:auto}.dash-tabs[data-astro-cid-puespqtd]::-webkit-scrollbar{display:none}.dash-tabs[data-astro-cid-puespqtd] button[data-astro-cid-puespqtd]{font-family:var(--font-display);white-space:nowrap;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;flex:none;padding:6px 14px;font-size:.85rem;font-weight:500;transition:color .2s,background .2s,border-color .2s}.dash-tabs[data-astro-cid-puespqtd] button[data-astro-cid-puespqtd]:hover{color:var(--text)}.dash-tabs[data-astro-cid-puespqtd] button[data-astro-cid-puespqtd][aria-selected=true]{border-color:var(--line-strong);color:var(--text);background:#7c3aed2e}.dash-open[data-astro-cid-puespqtd]{font-family:var(--font-display);white-space:nowrap;color:var(--purple-300);flex:none;margin-left:auto;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .2s}.dash-open[data-astro-cid-puespqtd]:hover{color:var(--text)}.dash-window[data-astro-cid-puespqtd]{border:1px solid var(--line-strong);border-radius:0 0 var(--radius) var(--radius);box-shadow:0 24px 60px -28px var(--glow);background:#f2f2f2;position:relative;overflow:hidden}.dash-viewport[data-astro-cid-puespqtd],.dash-stage[data-astro-cid-puespqtd]{overflow:hidden}.dash[data-astro-cid-puespqtd] iframe[data-astro-cid-puespqtd]{transform-origin:0 0;border:0;width:100%;height:80vh;display:block}.dash[data-astro-cid-puespqtd].is-enhanced .dash-viewport[data-astro-cid-puespqtd]{overscroll-behavior-x:contain;overflow:auto hidden}.dash[data-astro-cid-puespqtd].is-collapsed .dash-window[data-astro-cid-puespqtd]:after{content:"";pointer-events:none;background:linear-gradient(#07050c00,#07050ceb);height:120px;position:absolute;inset:auto 0 0}.dash-actions[data-astro-cid-puespqtd]{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px;display:flex}.dash-actions[data-astro-cid-puespqtd] .btn[data-astro-cid-puespqtd]{cursor:pointer;background:#0d0a16b8}.dash-actions[data-astro-cid-puespqtd] [data-astro-cid-puespqtd][hidden],.dash-open-below[data-astro-cid-puespqtd]{display:none}.dash-caption[data-astro-cid-puespqtd]{color:var(--text-muted);margin-top:12px;font-size:.85rem;line-height:1.6}.dash-caption-wide[data-astro-cid-puespqtd]{display:none}@media (width<=860px){.dash-caption-wide[data-astro-cid-puespqtd]{display:inline}}@media (width<=600px){.dash-bar[data-astro-cid-puespqtd]{gap:10px;padding-inline:12px}.dash-dots[data-astro-cid-puespqtd],.dash-bar[data-astro-cid-puespqtd] .dash-open[data-astro-cid-puespqtd]{display:none}.dash-open-below[data-astro-cid-puespqtd]{display:inline-flex}.dash-actions[data-astro-cid-puespqtd] .btn[data-astro-cid-puespqtd]{white-space:nowrap;flex:auto;justify-content:center}}.live[data-astro-cid-ihd4q3m5]{margin-top:clamp(28px,4vh,40px)}.live-bar[data-astro-cid-ihd4q3m5]{border:1px solid var(--line-strong);border-radius:var(--radius) var(--radius) 0 0;background:#130f1feb;border-bottom:0;align-items:center;gap:14px;min-height:46px;padding:6px 14px;display:flex}.live-dots[data-astro-cid-ihd4q3m5]{flex:none;gap:6px;display:flex}.live-dots[data-astro-cid-ihd4q3m5] i[data-astro-cid-ihd4q3m5]{background:var(--line-strong);border-radius:50%;width:9px;height:9px}.live-title[data-astro-cid-ihd4q3m5]{min-width:0;font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;color:var(--text-muted);font-size:.85rem;font-weight:500;overflow:hidden}.live-open[data-astro-cid-ihd4q3m5]{font-family:var(--font-display);white-space:nowrap;color:var(--purple-300);flex:none;margin-left:auto;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .2s}.live-open[data-astro-cid-ihd4q3m5]:hover{color:var(--text)}.live-window[data-astro-cid-ihd4q3m5]{aspect-ratio:16/9;border:1px solid var(--line-strong);border-radius:0 0 var(--radius) var(--radius);width:100%;max-height:80vh;box-shadow:0 24px 60px -28px var(--glow);background:#120f3a;position:relative;overflow:hidden}.live-window[data-astro-cid-ihd4q3m5] iframe{border:0;width:100%;height:100%;display:block}.live-start[data-astro-cid-ihd4q3m5]{cursor:pointer;place-items:center;text-decoration:none;display:grid;position:absolute;inset:0}.live-start[data-astro-cid-ihd4q3m5] img[data-astro-cid-ihd4q3m5]{object-fit:cover;filter:brightness(.7);width:100%;height:100%;transition:filter .3s;position:absolute;inset:0}.live-start[data-astro-cid-ihd4q3m5]:hover img[data-astro-cid-ihd4q3m5],.live-start[data-astro-cid-ihd4q3m5]:focus-visible img[data-astro-cid-ihd4q3m5]{filter:brightness(.85)}.live-play[data-astro-cid-ihd4q3m5]{background:var(--brand-gradient);box-shadow:0 12px 40px -10px var(--glow);font-family:var(--font-display);color:#fff;border-radius:999px;align-items:center;gap:10px;padding:14px 26px 14px 20px;font-size:1.05rem;font-weight:600;transition:transform .2s;display:inline-flex;position:relative}.live-start[data-astro-cid-ihd4q3m5]:hover .live-play[data-astro-cid-ihd4q3m5]{transform:scale(1.04)}.live-play[data-astro-cid-ihd4q3m5] svg[data-astro-cid-ihd4q3m5]{fill:currentColor;width:20px;height:20px}.live-actions[data-astro-cid-ihd4q3m5]{justify-content:center;margin-top:16px;display:none}.live-actions[data-astro-cid-ihd4q3m5] .btn[data-astro-cid-ihd4q3m5]{background:#0d0a16b8}.live-caption[data-astro-cid-ihd4q3m5]{color:var(--text-muted);margin-top:12px;font-size:.85rem;line-height:1.6}@media (width<=600px){.live-bar[data-astro-cid-ihd4q3m5]{gap:10px;padding-inline:12px}.live-dots[data-astro-cid-ihd4q3m5],.live-bar[data-astro-cid-ihd4q3m5] .live-open[data-astro-cid-ihd4q3m5]{display:none}.live-actions[data-astro-cid-ihd4q3m5]{display:flex}.live-window[data-astro-cid-ihd4q3m5]{aspect-ratio:auto;height:min(72svh,620px)}}@media (prefers-reduced-motion:reduce){.live-start[data-astro-cid-ihd4q3m5] img[data-astro-cid-ihd4q3m5],.live-play[data-astro-cid-ihd4q3m5]{transition:none}}#try-it{border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 24px 60px -36px var(--glow);background:#0d0a16b8;margin:0;padding:clamp(16px,3vw,28px);container-type:inline-size;& .sd-eyebrow,& .sd-label{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--purple-400);font-size:.72rem;font-weight:600;line-height:1.4}& .sd-heading{margin:8px 0 0;font-size:clamp(1.4rem,2.6vw,1.85rem);line-height:1.2}& .sd-intro{color:var(--text-soft);margin-top:12px;font-size:.98rem;line-height:1.7}& .sd-hint,& .sd-foot{color:var(--text-faint);margin-top:10px;font-size:.8rem;line-height:1.6}& button,& textarea{font:inherit;color:inherit}& .sd-examples{flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px;display:flex}& .sd-examples span{color:var(--text-muted);margin-right:4px;font-size:.82rem}& .sd-examples button{border:1px solid var(--line-strong);font-family:var(--font-display);text-align:left;color:var(--purple-300);cursor:pointer;background:#7c3aed1f;border-radius:999px;padding:6px 14px;font-size:.82rem;font-weight:500;line-height:1.4;transition:background .2s,border-color .2s,color .2s}& .sd-examples button:hover{border-color:var(--purple-400);color:var(--text);background:#7c3aed3d}& .sd-lists{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}& .sd-list{gap:8px;display:grid}& .sd-label small{font-family:var(--font-body);letter-spacing:0;text-transform:none;color:var(--text-faint);margin-left:6px;font-size:.72rem;font-weight:500}& textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;min-height:7.4em;color:var(--text);resize:vertical;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;background:#07050cb3;padding:10px 12px;font-size:.9rem;line-height:1.5}& textarea::placeholder{color:var(--text-faint)}& textarea:focus{border-color:var(--purple-400);outline:none;box-shadow:0 0 0 3px #7c3aed40}& .sd-filters{gap:12px;margin-top:22px;display:grid}& .sd-group{grid-template-columns:124px minmax(0,1fr);align-items:baseline;column-gap:12px;display:grid}& .sd-chips{flex-wrap:wrap;gap:6px;display:flex}& .sd-chip{border:1px solid var(--line);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:999px;padding:3px 11px;font-size:.8rem;line-height:1.5;transition:background .15s,border-color .15s,color .15s}& .sd-chip:hover{border-color:var(--line-strong);color:var(--text)}& .sd-chip[data-state="1"]{border-color:var(--purple-400);color:var(--text);background:#7c3aed47}& .sd-chip[data-state="1"]:before{content:"✓ ";color:var(--purple-300)}& .sd-chip[data-state="2"]{color:#fda4af;background:#fb71851a;border-color:#fb71858c}& .sd-chip[data-state="2"] span{text-decoration:line-through}& .sd-chip[data-state="2"]:before{content:"✕ "}& .sd-status{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-top:22px;padding-top:18px;display:flex}& .sd-count{color:var(--text-soft);margin:0;font-size:.95rem;line-height:1.4}& .sd-count b{font-family:var(--font-display);font-variant-numeric:tabular-nums;background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.6rem;font-weight:700}& .sd-count span{border-left:1px solid var(--line-strong);font-variant-numeric:tabular-nums;color:var(--text-muted);margin-left:10px;padding-left:10px;font-size:.85rem}& .sd-actions{flex-wrap:wrap;gap:8px;display:flex}& .sd-actions .btn{font-family:var(--font-display);cursor:pointer;padding:.6em 1.1em;font-size:.85rem;font-weight:600}& .sd-actions .btn-primary{border:1px solid #0000}& .sd-actions .btn-ghost{background:0 0}& .sd-actions .btn:disabled{opacity:.45;cursor:default;transform:none}& .sd-actions svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}& .sd-read{border-radius:var(--radius-sm);background:#7c3aed12;gap:4px;margin:14px 0 0;padding:12px 14px;list-style:none;display:grid}& .sd-read[hidden],& .sd-empty[hidden]{display:none}& .sd-read li{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.5}& .sd-read b{color:var(--text);font-weight:600}& .sd-read .is-out b{color:#fda4af;text-decoration:line-through}& .sd-table{border:1px solid var(--line);border-radius:var(--radius-sm);scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;max-height:380px;margin-top:14px;overflow:auto}& table{border-collapse:collapse;width:100%;min-width:640px;font-size:.78rem;line-height:1.45}& th,& td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);color:var(--text-soft);padding:7px 8px;font-weight:400}& th,& td:nth-child(n+3){white-space:nowrap}& th{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--purple-300);background:#151022;font-size:.7rem;font-weight:600;position:sticky;top:0}& :is(th,td):first-child{padding-left:12px}& td:first-child{color:var(--text);font-weight:500}& td.is-no{color:var(--text-faint)}& tbody tr:last-child td{border-bottom:0}& .sd-empty{text-align:center;color:var(--text-muted);margin:0;padding:28px 16px;font-size:.9rem}@container (width<=560px){& .sd-lists{grid-template-columns:minmax(0,1fr)}& .sd-group{grid-template-columns:minmax(0,1fr);row-gap:6px}& .sd-count span{border:0;margin:2px 0 0;padding:0;display:block}}}.project-body[data-astro-cid-yq2gsstb] .results[data-astro-cid-yq2gsstb]{border:1px solid var(--line);border-radius:var(--radius);background:#0d0a1699;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));margin:0 0 40px;padding:0;list-style:none;display:grid;overflow:hidden}.project-body[data-astro-cid-yq2gsstb] .results[data-astro-cid-yq2gsstb] li[data-astro-cid-yq2gsstb]{border-left:1px solid var(--line);flex-direction:column;gap:4px;margin:0 0 0 -1px;padding:18px 20px;display:flex}.result-value[data-astro-cid-yq2gsstb]{font-family:var(--font-display);background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.6rem,3vw,2.1rem);font-weight:700;line-height:1.1}.result-label[data-astro-cid-yq2gsstb]{color:var(--text-muted);font-size:.86rem;line-height:1.45}.flow[data-astro-cid-yq2gsstb]{margin:0;padding:0;list-style:none}.flow[data-astro-cid-yq2gsstb] li[data-astro-cid-yq2gsstb]{font-family:var(--font-display);color:var(--text);font-size:.9rem;font-weight:500;line-height:1.4}.flow[data-astro-cid-yq2gsstb] li[data-astro-cid-yq2gsstb]+li[data-astro-cid-yq2gsstb]:before{content:"↓";color:var(--purple-400);margin:2px 0;display:block}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb]{margin:0 0 44px}.project-body[data-astro-cid-yq2gsstb] .evolution-heading[data-astro-cid-yq2gsstb]{letter-spacing:.16em;text-transform:uppercase;color:var(--purple-400);margin:0 0 18px;font-size:.78rem;font-weight:600}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb] ol[data-astro-cid-yq2gsstb]{grid-template-columns:repeat(var(--steps), minmax(0, 1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid;position:relative}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb] ol[data-astro-cid-yq2gsstb]:before{content:"";top:6px;left:6px;right:calc((100% - (var(--steps) - 1) * 16px) / var(--steps) - 7px);background:linear-gradient(90deg, var(--line-strong), var(--purple-500));height:2px;position:absolute}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb] li[data-astro-cid-yq2gsstb]{flex-direction:column;gap:4px;margin:0;padding-top:26px;display:flex;position:relative}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb] li[data-astro-cid-yq2gsstb]:before{content:"";background:var(--bg);border:2px solid var(--purple-400);border-radius:50%;width:14px;height:14px;position:absolute;top:0;left:0}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb] li[data-astro-cid-yq2gsstb].current:before{background:var(--purple-500);border-color:var(--purple-300);box-shadow:0 0 14px var(--glow)}.step-stage[data-astro-cid-yq2gsstb]{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-size:.72rem;font-weight:600}.step-title[data-astro-cid-yq2gsstb]{font-family:var(--font-display);color:var(--text);font-size:1rem;font-weight:600;line-height:1.3}.step-detail[data-astro-cid-yq2gsstb]{color:var(--text-muted);font-size:.86rem;line-height:1.5}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].evo-anim ol[data-astro-cid-yq2gsstb]:before{transform-origin:0;transform:scaleX(0)}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].evo-anim li[data-astro-cid-yq2gsstb]:before{transform:scale(0)}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].evo-anim li[data-astro-cid-yq2gsstb]>span[data-astro-cid-yq2gsstb]{opacity:0;translate:0 8px}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].is-drawn ol[data-astro-cid-yq2gsstb]:before{transition:transform 1.1s cubic-bezier(.4,0,.2,1);transform:none}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].is-drawn li[data-astro-cid-yq2gsstb]:before{transition:transform .4s cubic-bezier(.3, 1.6, .5, 1) calc(var(--i) * .25s + .1s);transform:none}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].is-drawn li[data-astro-cid-yq2gsstb]>span[data-astro-cid-yq2gsstb]{opacity:1;transition:opacity .45s ease calc(var(--i) * .25s + .2s), translate .45s ease calc(var(--i) * .25s + .2s);translate:none}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].is-drawn li[data-astro-cid-yq2gsstb].current:after{content:"";opacity:0;pointer-events:none;width:14px;height:14px;animation:now-pulse 1.4s ease-out calc(var(--i) * .25s + .5s) 2;border:2px solid #a78bfaa6;border-radius:50%;position:absolute;top:0;left:0}@keyframes now-pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2.7)}}@media (width<=700px){.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].evo-anim ol[data-astro-cid-yq2gsstb]:before{transform-origin:top;transform:scaleY(0)}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb].is-drawn ol[data-astro-cid-yq2gsstb]:before{transition:transform 1.1s cubic-bezier(.4,0,.2,1);transform:none}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb] ol[data-astro-cid-yq2gsstb]{grid-template-columns:minmax(0,1fr);gap:20px}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb] ol[data-astro-cid-yq2gsstb]:before{background:linear-gradient(180deg, var(--line-strong), var(--purple-500));width:2px;height:auto;inset:6px auto 6px 6px}.project-body[data-astro-cid-yq2gsstb] .evolution[data-astro-cid-yq2gsstb] li[data-astro-cid-yq2gsstb]{padding:0 0 0 30px}}
