@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght,SOFT@0,9..144,400..700,0..100;1,9..144,400..700,0..100&family=Instrument+Sans:ital,wght@0,400..700;1,400..700&family=JetBrains+Mono:wght@400;500;600&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--f-display:"Fraunces", Georgia, serif;--f-ui:"Instrument Sans", system-ui, -apple-system, sans-serif;--f-num:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--bg:#fafafa;--bg-alt:#f4f4f5;--surface:#fff;--card-bg:#fff;--card-bg-hi:#fafafa;--fg:#09090b;--muted:#52525b;--faint:#a1a1aa;--border:#e4e4e7;--border-hi:#d4d4d8;--line:#09090b14;--line-strong:#09090b29;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-fg:#fff;--primary-wash:#2563eb12;--primary-wash-2:#2563eb24;--success:#15803d;--success-wash:#dcfce7;--accent:var(--primary)}html,body{background:var(--bg);color:var(--fg)}body{font-family:var(--f-ui);-webkit-font-smoothing:antialiased;font-feature-settings:"ss01", "cv01";min-height:100dvh;line-height:1.5}nav{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#fafafad9;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:.875rem 2rem;display:grid;position:sticky;top:0}nav .brand{letter-spacing:-.02em;color:var(--fg);justify-self:start;align-items:baseline;gap:.125rem;font-size:1.0625rem;font-weight:700;text-decoration:none;display:inline-flex}nav .brand .brand-mark{color:var(--primary);font-weight:700;transition:transform .2s;display:inline-block}nav .brand:hover .brand-mark{transform:translateY(-1px)}nav .nav-center{justify-self:center;align-items:center;gap:.25rem;display:flex}nav .nav-center>a,nav .nav-center .nav-dropdown>button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:.375rem;align-items:center;gap:.375rem;padding:.5rem .75rem;font-family:inherit;font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .15s,background .15s;display:inline-flex}nav .nav-center>a:hover,nav .nav-center>a.active,nav .nav-center .nav-dropdown>button:hover,nav .nav-center .nav-dropdown[data-open=true]>button{color:var(--fg);background:#09090b0a}nav .nav-auth{justify-self:end;align-items:center;gap:.5rem;display:flex}nav .nav-auth .btn-login{color:var(--fg);border-radius:.375rem;padding:.5rem .875rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .15s}nav .nav-auth .btn-login:hover{background:#09090b0d}nav .nav-auth .btn-register{background:var(--fg);border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s,transform .12s;color:var(--bg)!important}nav .nav-auth .btn-register:hover{background:var(--primary)}nav .nav-auth .btn-register:active{transform:translateY(1px)}.nav-dropdown{position:relative}.nav-dropdown>button .ic{transition:transform .2s}.nav-dropdown[data-open=true]>button .ic{transform:rotate(180deg)}.nav-flyout{background:var(--surface);border:1px solid var(--border);opacity:0;pointer-events:none;z-index:50;border-radius:.75rem;flex-direction:column;gap:.125rem;min-width:17rem;padding:.5rem;transition:opacity .18s,transform .18s;display:flex;position:absolute;top:calc(100% + .375rem);left:50%;transform:translate(-50%)translateY(-4px);box-shadow:0 1px 2px #09090b0a,0 12px 32px #09090b1f}.nav-dropdown[data-open=true] .nav-flyout{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.nav-flyout a{color:var(--fg);border-radius:.5rem;align-items:center;gap:.75rem;padding:.625rem .75rem;text-decoration:none;transition:background .12s;display:flex}.nav-flyout a:hover{background:var(--bg-alt)}.nav-flyout a .mod-item-icon{background:color-mix(in srgb, var(--mod-color,var(--muted)) 10%, var(--bg));width:2rem;height:2rem;color:var(--mod-color,var(--fg));border-radius:.4375rem;flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-flyout a .mod-item-text{min-width:0}.nav-flyout a .mod-item-name{font-size:.9375rem;font-weight:500;line-height:1.2}.nav-flyout a .mod-item-desc{color:var(--muted);margin-top:.125rem;font-size:.75rem;line-height:1.35}.nav-flyout a .mod-item-badge{background:var(--bg-alt);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;vertical-align:middle;border-radius:999px;margin-left:.375rem;padding:.0625rem .375rem;font-size:.625rem;font-weight:600;display:inline-block}.nav-flyout .nav-flyout-divider{background:var(--line);height:1px;margin:.375rem 0}.nav-flyout a.nav-flyout-foot{color:var(--muted);align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.8125rem;display:flex}.nav-flyout a.nav-flyout-foot:hover{color:var(--fg)}@media (width<=720px){nav{grid-template-columns:auto 1fr;gap:.5rem;padding:.75rem 1rem}nav .nav-center{display:none}nav .nav-auth{gap:.375rem}nav .nav-auth .btn-login{padding:.4375rem .5rem}nav .nav-auth .btn-register{padding:.4375rem .75rem}}.btn{text-align:center;cursor:pointer;border:1px solid #0000;border-radius:.5rem;padding:.75rem 2rem;font-size:.9375rem;font-weight:600;text-decoration:none;transition:opacity .15s,background .15s,border-color .15s;display:inline-block}.btn-primary{background:var(--primary);color:var(--primary-fg)}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{color:var(--fg);border-color:var(--border-hi);background:0 0}.btn-secondary:hover{background:var(--bg-alt)}footer.site-footer{border-top:1px solid var(--border);background:var(--bg-alt);isolation:isolate;margin-top:6rem;padding:4rem 2rem 2rem;position:relative;overflow:hidden}footer.site-footer:before{content:"";z-index:-1;opacity:.5;pointer-events:none;background-image:radial-gradient(circle at 1px 1px,#09090b12 1px,#0000 0);background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 80% at 50% 30%,#0000 30%,#000 90%);mask-image:radial-gradient(70% 80% at 50% 30%,#0000 30%,#000 90%)}footer.site-footer .container{grid-template-columns:2fr 1fr 1fr 1fr;align-items:start;gap:3rem;max-width:72rem;margin:0 auto;display:grid}footer.site-footer .brand-col .mark{font-family:var(--f-display);letter-spacing:-.02em;font-variation-settings:"opsz" 96, "SOFT" 40;color:var(--fg);align-items:baseline;gap:.125rem;font-size:1.75rem;font-weight:400;text-decoration:none;display:inline-flex}footer.site-footer .brand-col .mark .dot{color:var(--primary);font-weight:700}footer.site-footer .brand-col .tagline{color:var(--muted);max-width:22rem;font-size:.9375rem;line-height:1.55;font-family:var(--f-display);font-variation-settings:"opsz" 96, "SOFT" 70;margin-top:.875rem;font-style:italic;font-weight:400}footer.site-footer h4{font-family:var(--f-ui);text-transform:uppercase;letter-spacing:.14em;color:var(--faint);align-items:center;gap:.625rem;margin-bottom:1rem;font-size:.6875rem;font-weight:600;display:inline-flex}footer.site-footer h4:before{content:"";background:var(--border-hi);width:1rem;height:1px}footer.site-footer ul{flex-direction:column;gap:.625rem;margin:0;padding:0;list-style:none;display:flex}footer.site-footer a{color:var(--fg);font-size:.9375rem;font-family:var(--f-ui);text-decoration:none;transition:color .15s,padding-left .2s}footer.site-footer a:hover{color:var(--primary);padding-left:.25rem}footer.site-footer .bar{border-top:1px solid var(--border);max-width:72rem;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin:3.5rem auto 0;padding-top:1.5rem;font-size:.8125rem;display:flex}footer.site-footer .bar .made-in{font-family:var(--f-display);color:var(--fg);font-variation-settings:"opsz" 96, "SOFT" 70;align-items:center;gap:.5rem;font-size:.875rem;font-style:italic;display:inline-flex}footer.site-footer .bar .made-in .heart{color:#dc2626;animation:2.4s ease-in-out infinite heartbeat}@keyframes heartbeat{0%,40%,to{transform:scale(1)}20%{transform:scale(1.15)}}footer.site-footer .bar .meta{font-family:var(--f-num);font-feature-settings:"tnum" on;color:var(--faint);letter-spacing:.04em}@media (width<=880px){footer.site-footer .container{grid-template-columns:1fr 1fr;gap:2.5rem 2rem}footer.site-footer .brand-col{grid-column:1/-1}}@media (width<=520px){footer.site-footer .container{grid-template-columns:1fr;gap:2rem}footer.site-footer{padding:2.5rem 1.25rem 1.75rem}footer.site-footer .bar{flex-direction:column;align-items:flex-start;gap:.75rem}}main.legal{max-width:48rem;color:var(--fg);margin:0 auto;padding:4rem 2rem;line-height:1.65}main.legal h1{font-family:var(--f-display);letter-spacing:-.025em;font-variation-settings:"opsz" 144, "SOFT" 40;color:var(--fg);margin-bottom:.5rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:400}main.legal .updated{color:var(--muted);margin-bottom:2.5rem;font-size:.875rem}main.legal h2{letter-spacing:-.01em;margin:2.5rem 0 .75rem;font-size:1.25rem;font-weight:600}main.legal h3{margin:1.75rem 0 .5rem;font-size:1rem;font-weight:600}main.legal p,main.legal li{color:#3f3f46;font-size:.9375rem}main.legal p{margin-bottom:1rem}main.legal ul,main.legal ol{margin:0 0 1rem 1.25rem}main.legal ul li,main.legal ol li{margin-bottom:.5rem}main.legal a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}main.legal strong{color:var(--fg)}main.legal code,main.legal .mono{background:var(--bg-alt);border-radius:.25rem;padding:.125rem .375rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.875rem}main.legal .callout{background:var(--primary-wash);border-left:3px solid var(--primary);border-radius:.375rem;margin:1.5rem 0;padding:1rem 1.25rem}main.legal .callout p:last-child{margin-bottom:0}main.legal h2,main.legal h3{scroll-margin-top:5rem;position:relative}main.legal h2 .anchor,main.legal h3 .anchor{color:var(--faint);opacity:0;-webkit-user-select:none;user-select:none;padding:0 .25rem;font-size:.9em;font-weight:400;text-decoration:none;transition:opacity .15s,color .15s;position:absolute;top:50%;left:-1.5rem;transform:translateY(-50%)}main.legal h2:hover .anchor,main.legal h3:hover .anchor,main.legal h2 .anchor:focus,main.legal h3 .anchor:focus{opacity:1}main.legal h2 .anchor:hover,main.legal h3 .anchor:hover,main.legal h2:target,main.legal h3:target{color:var(--primary)}@media print{nav,footer.site-footer,[data-footer]{display:none!important}html,body{color:#000!important;background:#fff!important}main.legal{color:#000;max-width:none;padding:.5rem 0}main.legal a{color:#000;text-decoration:underline}main.legal a[href^=http]:after{content:" (" attr(href) ")";color:#555;word-break:break-all;font-size:.8em}main.legal .callout{border-left:2px solid #333;background:#f5f5f5!important}main.legal h1,main.legal h2,main.legal h3{page-break-after:avoid;break-after:avoid}main.legal p,main.legal li{orphans:3;widows:3}main.legal .anchor{display:none}}
