@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=Inter:wght@400;500;600;700&display=swap";:root{--c-bg: #fefcf8;--c-bg-card: #ffffff;--c-bg-soft: #f6f4ee;--c-bg-deep: #0c0a09;--c-fg: #18181b;--c-fg-soft: #52525b;--c-fg-mute: #a1a1aa;--c-border: #e7e5e1;--c-border-strong: #d6d3cd;--c-accent: #b45309;--c-accent-soft: #fef3c7;--c-verified: #15803d;--c-verified-bg: #dcfce7;--c-international: #b45309;--c-international-bg: #fef3c7;--c-unverified: #57534e;--c-unverified-bg: #ede8e0;--f-display: "Fraunces", "Iowan Old Style", Georgia, serif;--f-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--f-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--container: 1180px;--container-narrow: 760px;--r-sm: 6px;--r: 10px;--r-lg: 16px;--r-xl: 24px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .04);--shadow: 0 4px 12px -2px rgb(0 0 0 / .06), 0 2px 4px -2px rgb(0 0 0 / .04);--shadow-lg: 0 12px 32px -8px rgb(0 0 0 / .1), 0 4px 8px -4px rgb(0 0 0 / .05);--t-fast: .12s cubic-bezier(.4, 0, .2, 1);--t: .2s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{background:var(--c-bg);color:var(--c-fg);font-family:var(--f-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-height:100vh;display:flex;flex-direction:column;position:relative;background:url(/bg-shape-tl.svg) no-repeat top left / 360px auto,url(/bg-shape-br.svg) no-repeat bottom right / 320px auto,radial-gradient(ellipse 90% 50% at 15% 10%,rgba(254,243,199,.45),transparent 60%),radial-gradient(ellipse 70% 40% at 90% 80%,rgba(220,252,231,.32),transparent 65%),var(--c-bg);background-attachment:fixed,fixed,fixed,fixed,fixed;overflow-x:hidden}@media(max-width:768px){body{background:url(/bg-shape-tl.svg) no-repeat top left / 200px auto,url(/bg-shape-br.svg) no-repeat bottom right / 180px auto,radial-gradient(ellipse 90% 50% at 15% 10%,rgba(254,243,199,.45),transparent 60%),radial-gradient(ellipse 70% 40% at 90% 80%,rgba(220,252,231,.32),transparent 65%),var(--c-bg);background-attachment:fixed,fixed,fixed,fixed,fixed}}h1,h2,h3,h4{font-family:var(--f-display);font-weight:500;letter-spacing:-.02em;line-height:1.15;color:var(--c-fg)}h1{font-size:clamp(2.25rem,4vw + 1rem,3.75rem);font-weight:500}h2{font-size:clamp(1.5rem,2vw + 1rem,2.25rem)}h3{font-size:1.25rem;font-weight:600}p{color:var(--c-fg-soft)}a{color:inherit;text-decoration:none;transition:color var(--t-fast)}code{font-family:var(--f-mono);font-size:.9em;background:var(--c-bg-soft);padding:.125em .375em;border-radius:var(--r-sm);border:1px solid var(--c-border)}button{font:inherit;cursor:pointer}.container{max-width:var(--container);margin:0 auto;padding:0 1.5rem}.container-narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 1.5rem}main{flex:1;padding:4rem 0}.site-header{position:sticky;top:0;z-index:50;background:#fefcf8d9;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--c-border)}.site-header-inner{display:flex;justify-content:space-between;align-items:center;padding:1.125rem 1.5rem;max-width:var(--container);margin:0 auto}.logo{display:inline-flex;align-items:baseline;color:var(--c-fg);text-decoration:none;line-height:1}.logo-text{font-family:var(--f-display);font-weight:600;font-size:1.375rem;letter-spacing:-.02em;color:var(--c-fg)}.logo-dot{color:var(--c-accent);margin-left:.05em}@media(max-width:540px){.logo-text{font-size:1.125rem}}.site-nav{display:flex;gap:2rem;align-items:center}.site-nav a{font-size:.9375rem;font-weight:500;color:var(--c-fg-soft);position:relative}.site-nav a:hover{color:var(--c-fg)}.nav-auth-link{padding:.4rem .875rem;border:1px solid var(--c-border-strong);border-radius:999px;font-size:.875rem;transition:all var(--t-fast)}.nav-auth-link:hover{background:var(--c-bg-soft);border-color:var(--c-fg)}.nav-auth-link-active{background:var(--c-fg);color:#fff!important;border-color:var(--c-fg)}.nav-auth-link-active:hover{background:#27272a;color:#fff!important}.site-footer{background:var(--c-bg-deep);color:#d4d4d8;padding:4rem 0 2rem;margin-top:6rem}.site-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem;padding:0 1.5rem;max-width:var(--container);margin:0 auto}.site-footer h4{color:#fff;font-family:var(--f-body);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem}.site-footer ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:.625rem}.site-footer a{color:#a1a1aa;font-size:.9375rem;transition:color var(--t-fast)}.site-footer a:hover{color:#fff}.footer-brand{display:inline-block;color:#fff;font-family:var(--f-display);font-size:1.625rem;font-weight:600;letter-spacing:-.02em;line-height:1;margin-bottom:1rem}.footer-dot{color:var(--c-accent);margin-left:.05em}.site-footer .tagline{color:#a1a1aa;font-size:.9375rem;max-width:28em}.site-footer-bottom{border-top:1px solid #27272a;margin-top:3rem;padding:1.5rem 1.5rem 0;max-width:var(--container);margin-left:auto;margin-right:auto;font-size:.8125rem;color:#71717a;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--r);font-weight:600;font-size:.9375rem;border:1px solid transparent;transition:all var(--t-fast);text-decoration:none;white-space:nowrap}.btn-primary{background:var(--c-bg-deep);color:#fff}.btn-primary:hover{background:#27272a;transform:translateY(-1px);box-shadow:var(--shadow)}.btn-secondary{background:#fff;color:var(--c-fg);border-color:var(--c-border-strong)}.btn-secondary:hover{background:var(--c-bg-soft)}.input{width:100%;padding:.875rem 1rem;font-size:1rem;background:#fff;border:1px solid var(--c-border-strong);border-radius:var(--r);font-family:inherit;transition:border-color var(--t-fast),box-shadow var(--t-fast)}.input:focus{outline:none;border-color:var(--c-fg);box-shadow:0 0 0 3px #18181b1a}.badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid transparent;font-family:var(--f-body);letter-spacing:.01em}.badge-verified{color:var(--c-verified);background:var(--c-verified-bg);border-color:color-mix(in srgb,var(--c-verified) 25%,transparent)}.badge-international{color:var(--c-international);background:var(--c-international-bg);border-color:color-mix(in srgb,var(--c-international) 25%,transparent)}.badge-unverified{color:var(--c-unverified);background:var(--c-unverified-bg);border-color:color-mix(in srgb,var(--c-unverified) 25%,transparent)}.badge-dot{width:.5rem;height:.5rem;border-radius:50%;background:currentColor;flex-shrink:0}.toast-host{position:fixed;top:5rem;right:1.25rem;z-index:1000;display:flex;flex-direction:column;gap:.625rem;pointer-events:none}.toast{background:var(--c-bg-card);color:var(--c-fg);border:1px solid var(--c-border);border-left-width:3px;border-radius:var(--r);padding:.875rem 1.125rem;box-shadow:var(--shadow-lg);font-size:.9375rem;max-width:24rem;pointer-events:auto;animation:toast-in .22s cubic-bezier(.4,0,.2,1);white-space:pre-wrap}.toast-success{border-left-color:var(--c-verified)}.toast-error{border-left-color:#b91c1c;background:#fef2f2;color:#7f1d1d}.toast-info{border-left-color:var(--c-accent)}.toast-out{animation:toast-out .2s cubic-bezier(.4,0,.2,1) forwards}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes toast-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}.spinner{display:inline-block;width:1rem;height:1rem;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-.18em;margin-right:.375rem}@keyframes spin{to{transform:rotate(360deg)}}.btn[disabled],button[disabled]{opacity:.65;cursor:wait}@media(max-width:640px){main{padding:2.5rem 0}.site-footer-grid{grid-template-columns:1fr;gap:2rem}.site-nav{gap:1rem}.toast-host{left:1rem;right:1rem;top:4.5rem}.toast{max-width:none}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
