#filtro-page,#filtro-page *,#filtro-page :before,#filtro-page :after{box-sizing:border-box}#filtro-page{--bg:#0a0a0a;--surface:#111;--surface-2:#1a1a1a;--border:#ffffff0f;--border-2:#ffffff1c;--accent:#c89bff;--accent-dim:#c89bff1a;--accent-mid:#c89bff3d;--form-accent:#fff;--form-accent-dim:#ffffff1a;--form-accent-contrast:var(--bg);--form-accent-hover:#e5e5e5;--form-accent-glow:#ffffff73;--text:#e8e8e8;--text-mid:#9a9a9a;--text-muted:#888;--code-bg:#0d0d0d;--code-text:#b3a8e0;--sans:"Plus Jakarta Sans", sans-serif;--mono:"JetBrains Mono", monospace;--ease:cubic-bezier(.4, 0, .2, 1);font-family:var(--sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6}#filtro-page .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#onboarding{background:var(--bg);z-index:50;transition:opacity .4s var(--ease);flex-direction:column;align-items:center;padding:4.5rem 1.5rem 1.5rem;display:flex;position:fixed;inset:0;overflow-y:auto}#onboarding.fade-out{opacity:0;pointer-events:none}.ob-logo{opacity:.9;z-index:51;align-items:center;gap:.5rem;text-decoration:none;display:flex;position:fixed;top:1.25rem;left:50%;transform:translate(-50%)}.ob-logo img{filter:invert();width:auto;height:2.25rem;display:block}.ob-logo img.wordmark{height:1.5rem}@media (prefers-color-scheme:light){.ob-logo img{filter:none}}.ob-wrap{text-align:center;width:100%;max-width:460px;margin:auto}.ob-step{transition:opacity .28s}.ob-step.hidden{display:none}.ob-step.dimming{opacity:0}.ob-thumbnail-wrap{border:1px solid var(--border-2);background-color:var(--surface);background-image:linear-gradient(to right, var(--border) 1px, transparent 1px), linear-gradient(to bottom, var(--border) 1px, transparent 1px);background-size:20px 20px;border-radius:16px;justify-content:center;align-items:center;max-width:220px;margin:0 auto 1.5rem;padding:1.5rem;animation:1.6s linear infinite grid-scroll;display:flex;overflow:hidden}@keyframes grid-scroll{0%{background-position:0 0,0 0}to{background-position:0 -20px,0 -20px}}@media (prefers-reduced-motion:reduce){.ob-thumbnail-wrap{animation:none}}.ob-thumbnail{width:100%;max-width:130px;height:auto;display:block}.ob-thumbnail-light{display:none}.ob-thumbnail-dark{display:block}@media (prefers-color-scheme:light){.ob-thumbnail-light{display:block}.ob-thumbnail-dark{display:none}}@media (max-width:640px){.ob-thumbnail-wrap{max-width:280px}.ob-thumbnail{max-width:170px}}.ob-q{font-size:calc((clamp(1.75rem, 6vw, 2.75rem)) * var(--font-scale));font-weight:var(--font-weight-extrabold);letter-spacing:-.03em;color:var(--text);margin-bottom:.75rem;line-height:1.1}.ob-sub{font-size:calc(1.15rem * var(--font-scale));color:var(--text-mid);margin-bottom:1.75rem;line-height:1.5}.ob-form{text-align:left;flex-direction:column;gap:.75rem;display:flex}.ob-input{background:var(--surface);border:1.5px solid var(--border-2);color:var(--text);font-family:var(--sans);font-size:calc(1rem * var(--font-scale));border-radius:14px;width:100%;padding:1rem 1.125rem;transition:border-color .16s,background .16s}.ob-input::placeholder{color:var(--text-muted)}.ob-input:focus{border-color:var(--form-accent);background:var(--form-accent-dim);outline:none}.ob-err{color:#ff6b6b;font-size:calc(1rem * var(--font-scale));min-height:1.1rem;margin:-.25rem 0 0}@media (prefers-color-scheme:light){.ob-err{color:#dc2626}}.ob-submit{background:var(--form-accent);color:var(--form-accent-contrast);font-family:var(--sans);font-weight:var(--font-weight-bold);font-size:calc(1.1rem * var(--font-scale));cursor:pointer;border:none;border-radius:14px;width:100%;min-height:56px;padding:1rem 1.5rem;transition:background .2s,box-shadow .2s}.ob-submit:hover{background:var(--form-accent-hover);box-shadow:0 0 24px var(--form-accent-glow)}.ob-submit:focus-visible{outline:2px solid var(--form-accent);outline-offset:2px}@property --border-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@keyframes border-spin{to{--border-angle:360deg}}.cta-border-wrapper{border-radius:17px;padding:3px;position:relative}.cta-border-wrapper:before{content:"";border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--border-angle), transparent 0%, transparent 50%, #818cf8 68%, #c4b5fd 75%, #818cf8 82%, transparent 100%);-webkit-mask-composite:xor;padding:3px;animation:3s linear infinite border-spin;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@media (prefers-reduced-motion:reduce){.cta-border-wrapper:before{animation:none}}@media (max-width:640px){#onboarding{padding-bottom:100px}#ob0 .cta-border-wrapper{left:1rem;right:1rem;bottom:calc(1.25rem + env(safe-area-inset-bottom,0px));z-index:5;max-width:460px;margin:0 auto;position:fixed}}.ob-opts{grid-template-columns:1fr;gap:.75rem;display:grid}.ob-opt{background:var(--surface);border:1.5px solid var(--border-2);color:var(--text-mid);font-family:var(--sans);font-size:calc(1rem * var(--font-scale));font-weight:var(--font-weight-medium);cursor:pointer;text-align:left;border-radius:14px;align-items:center;width:100%;min-height:60px;padding:1rem 1.125rem;line-height:1.35;transition:border-color .16s,background .16s,color .16s;display:flex}.ob-opt:hover,.ob-opt:focus-visible{border-color:var(--form-accent);background:var(--form-accent-dim);color:var(--text);outline:none}.ob-opt.chosen{border-color:var(--form-accent);background:var(--form-accent-dim);color:var(--form-accent)}.ob-progress{justify-content:center;gap:.4rem;margin-top:1.75rem;display:flex}.ob-pdot{background:var(--border-2);border-radius:50%;width:7px;height:7px;transition:background .2s}.ob-pdot.on{background:var(--form-accent)}#article{opacity:0;transition:opacity .5s}#article.visible{opacity:1}#article.hidden{display:none}.a-readbar{z-index:40;background:0 0;height:3px;position:fixed;top:0;left:0;right:0}.a-readbar-fill{background:var(--accent);width:0%;height:100%;transition:width .1s linear}.a-nav{z-index:30;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex;position:sticky;top:0}.a-nav-logo{opacity:.92;align-items:center;gap:.5rem;text-decoration:none;display:flex}.a-nav-logo img{filter:invert();width:auto;height:2.25rem}.a-nav-logo img.wordmark{height:1.5rem}@media (prefers-color-scheme:light){.a-nav-logo img{filter:none}}.a-nav-cta{font-size:calc(1rem * var(--font-scale));font-weight:var(--font-weight-bold);color:#fff;background:var(--accent);cursor:pointer;font-family:var(--sans);white-space:nowrap;border:none;border-radius:9px;padding:.45rem .95rem;text-decoration:none;transition:opacity .18s}.a-nav-cta:hover{opacity:.88}.a-wrap{max-width:720px;margin:0 auto;padding:2.5rem 1.5rem 5rem}h1.a-h1{font-size:calc((clamp(2.1rem, 6vw, 3.25rem)) * var(--font-scale));font-weight:var(--font-weight-extrabold);letter-spacing:-.035em;color:var(--text);margin-bottom:1rem;line-height:1.08}.a-lede{font-size:calc(1.25rem * var(--font-scale));color:var(--text-mid);margin-bottom:2.25rem;line-height:1.55}.a-wrap h2{font-size:calc((clamp(1.5rem, 4vw, 2rem)) * var(--font-scale));font-weight:var(--font-weight-extrabold);letter-spacing:-.025em;color:var(--text);margin:3rem 0 1rem;scroll-margin-top:5rem;line-height:1.2}.a-wrap h3{font-size:calc(1.25rem * var(--font-scale));font-weight:var(--font-weight-bold);color:var(--text);letter-spacing:-.01em;margin:2rem 0 .65rem}.a-wrap p{font-size:calc(1rem * var(--font-scale));color:var(--text-mid);margin-bottom:1.15rem}.a-wrap p strong{color:var(--text);font-weight:var(--font-weight-semibold)}.a-wrap ul{flex-direction:column;gap:.6rem;margin:0 0 1.5rem;list-style:none;display:flex}.a-wrap ul li{font-size:calc(1rem * var(--font-scale));color:var(--text-mid);padding-left:1.6rem;line-height:1.5;position:relative}.a-wrap ul li strong{color:var(--text);font-weight:var(--font-weight-semibold)}.a-wrap ul li a{color:var(--accent)}.a-wrap ul li:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:.6em;left:0}.a-refs-label{font-size:calc(1rem * var(--font-scale));color:var(--text-muted);margin:-.5rem 0 .75rem}.a-refs{flex-direction:column;gap:.5rem;margin:0 0 1.5rem;padding-left:1.3rem;list-style:decimal;display:flex}.a-refs li{font-size:calc(1rem * var(--font-scale));color:var(--text-muted)}.a-refs li a{color:var(--text-mid);font-weight:var(--font-weight-semibold);text-decoration:none}.a-refs li a span{color:var(--text-muted);font-weight:var(--font-weight-normal)}.a-refs li a:hover{color:var(--accent)}.a-refs li a:hover span{color:var(--accent);opacity:.8}.a-mermaid{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;margin:1.75rem 0;padding:1.5rem 1rem;overflow-x:auto}.a-mermaid svg{max-width:100%;height:auto;margin:0 auto;display:block}code.ic{font-family:var(--mono);background:var(--surface-2);border:1px solid var(--border-2);color:var(--accent);border-radius:5px;padding:.12em .4em;font-size:1em}.a-callout{background:var(--accent-dim);border:1px solid var(--accent-mid);font-size:calc(1.0625rem * var(--font-scale));color:var(--text-mid);border-radius:14px;margin:1.75rem 0;padding:1.25rem 1.4rem;line-height:1.6}.a-callout strong{color:var(--text)}.a-callout .a-callout-tag{font-size:calc(1rem * var(--font-scale));font-weight:var(--font-weight-bold);color:var(--accent);letter-spacing:.02em;align-items:center;gap:.5rem;margin-bottom:.6rem;display:flex}.a-callout .a-callout-tag svg{width:16px;height:16px}.a-grid{grid-template-columns:1fr;gap:.75rem;margin:1.5rem 0;display:grid}@media (min-width:620px){.a-grid{grid-template-columns:1fr 1fr}}.a-col{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;padding:1.1rem 1.25rem}.a-col.lit{background:var(--accent-dim);border-color:var(--accent-mid)}.a-col-lbl{font-size:calc(1rem * var(--font-scale));font-weight:var(--font-weight-bold);color:var(--text-muted);margin-bottom:.5rem}.a-col.lit .a-col-lbl{color:var(--accent)}.a-col-row{font-size:calc(1rem * var(--font-scale));color:var(--text-mid);border-bottom:1px solid var(--border);padding:.35rem 0}.a-col-row:last-child{border-bottom:none}pre.a-code{background:var(--code-bg);border:1px solid var(--border-2);font-family:var(--mono);font-size:calc(1rem * var(--font-scale));color:var(--code-text);tab-size:2;white-space:pre-wrap;word-break:break-word;border-radius:14px;margin:1.5rem 0;padding:1.25rem;line-height:1.7;position:relative;overflow-x:auto}.ck{color:#7dcfff}.cs{color:#9ece6a}.cc{color:var(--text-muted)}.cn{color:var(--accent)}.a-term{background:var(--code-bg);border:1px solid var(--border-2);border-radius:14px;margin:1.5rem 0;overflow:hidden}.a-term-bar{background:var(--surface-2);border-bottom:1px solid var(--border);align-items:center;gap:.4rem;padding:.55rem .8rem;display:flex}.td{border-radius:50%;width:9px;height:9px}.td-r{background:#ff5f57}.td-y{background:#febc2e}.td-g{background:#28c840}.a-term-lbl{text-align:center;font-size:calc(1rem * var(--font-scale));color:var(--text-muted);font-family:var(--mono);flex:1}.a-term-body{font-family:var(--mono);font-size:calc(1rem * var(--font-scale));padding:.9rem 1rem;line-height:1.7}.tl{display:block}.tp{color:var(--accent);margin-right:.4rem}.tc{color:var(--text)}.to{color:var(--text-muted);display:block}.th{color:var(--accent)}.a-prompt-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.a-copy-btn{font-size:calc(1rem * var(--font-scale));font-weight:var(--font-weight-semibold);color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-mid);cursor:pointer;font-family:var(--sans);white-space:nowrap;border-radius:9px;padding:.5rem 1rem;transition:background .15s,color .15s}.a-copy-btn:hover{background:var(--accent-mid)}.a-copy-btn.copied{color:var(--text-mid);border-color:var(--border-2);background:var(--surface-2)}.a-cta{text-align:center;background:var(--surface);border:1px solid var(--border-2);border-radius:20px;margin-top:3.5rem;padding:2rem 1.75rem}.a-cta h2{margin:0 0 .75rem}.a-cta p{margin-bottom:1.5rem}.a-cta-row{flex-direction:column;gap:.7rem;display:flex}@media (min-width:520px){.a-cta-row{flex-direction:row;justify-content:center}}.a-btn-primary{background:var(--accent);color:#fff;font-weight:var(--font-weight-bold);font-size:calc(1rem * var(--font-scale));cursor:pointer;font-family:var(--sans);border:none;border-radius:12px;justify-content:center;align-items:center;padding:.9rem 1.6rem;text-decoration:none;transition:opacity .18s;display:inline-flex}.a-btn-primary:hover{opacity:.88}.a-btn-sec{border:1.5px solid var(--border-2);color:var(--text-mid);font-size:calc(1rem * var(--font-scale));cursor:pointer;font-family:var(--sans);background:0 0;border-radius:12px;justify-content:center;align-items:center;padding:.9rem 1.6rem;text-decoration:none;transition:all .18s;display:inline-flex}.a-btn-sec:hover{color:var(--text);border-color:var(--accent)}.a-foot{border-top:1px solid var(--border);font-size:calc(1rem * var(--font-scale));color:var(--text-muted);margin-top:3rem;padding-top:1.5rem}.a-foot a{color:var(--accent);text-decoration:none}@media (prefers-color-scheme:light){#filtro-page{--bg:#fff;--surface:#f6f6f6;--surface-2:#ededed;--border:#0d10201a;--border-2:#0d10202e;--accent:#7c3aed;--accent-dim:#7c3aed17;--accent-mid:#7c3aed42;--form-accent:#000;--form-accent-dim:#0000000f;--form-accent-hover:#222;--form-accent-glow:#00000059;--text:#101010;--text-mid:#5a5a5a;--text-muted:#626262;--code-bg:#f4f4f4;--code-text:#5b3aa8}.ck{color:#0a5fa5}.cs{color:#3b7500}.cc{color:var(--text-mid)}}
