:root{--canopy: #0a1f14;--deep: #0f2e1f;--bark: #1a3d2a;--leaf: #2d5a3d;--moss: #7a9b6a;--lichen: #c9d9b0;--mist: #e8efe3;--fog: #f3f7f0;--ink: #1a2a1f;--muted: #5a6e5f;--danger: #8b3a3a;--ok: #3d6b4f;--radius: 4px;--font-display: "Fraunces", "Palatino Linotype", Palatino, serif;--font-body: "Source Sans 3", "Source Sans Pro", "Helvetica Neue", sans-serif;--shadow-soft: 0 12px 40px rgba(10, 31, 20, .18);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-body);font-size:1.05rem;line-height:1.55;color:var(--ink);background:radial-gradient(ellipse 120% 80% at 10% -10%,rgba(122,155,106,.22),transparent 55%),radial-gradient(ellipse 90% 60% at 100% 0%,rgba(45,90,61,.18),transparent 50%),linear-gradient(180deg,var(--fog) 0%,var(--mist) 40%,#dfe8d8 100%);background-attachment:fixed}a{color:var(--leaf);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--deep)}h1,h2,h3,.brand{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em;line-height:1.15}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex;flex-direction:column}.site-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;padding:1rem 1.5rem;border-bottom:1px solid rgba(26,61,42,.12);background:#f3f7f0b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}.site-nav .brand-link{font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:var(--deep);text-decoration:none;margin-right:.5rem}.site-nav .nav-links{display:flex;flex-wrap:wrap;gap:.35rem 1rem;flex:1}.site-nav a{color:var(--muted);text-decoration:none;font-size:.95rem;font-weight:500}.site-nav a:hover,.site-nav a.active{color:var(--deep)}.site-nav .nav-meta{font-size:.9rem;color:var(--muted)}main{flex:1;width:min(720px,calc(100% - 2rem));margin:0 auto;padding:2rem 0 4rem}main.hero-main{width:min(960px,calc(100% - 2rem));display:flex;flex-direction:column;padding-top:0;padding-bottom:4rem}.hero{position:relative;padding:3rem 0 2.5rem;overflow:hidden;min-height:calc(100vh - 5.5rem);display:flex;flex-direction:column;justify-content:center}.hero:before{content:"";position:absolute;inset:-20% -10% auto auto;width:min(520px,80vw);height:min(520px,80vw);border-radius:50%;background:radial-gradient(circle at 40% 40%,rgba(201,217,176,.55),transparent 60%),radial-gradient(circle at 70% 60%,rgba(122,155,106,.35),transparent 55%);pointer-events:none;animation:drift 14s ease-in-out infinite alternate}.hero:after{content:"";position:absolute;left:-8%;bottom:18%;width:40%;height:2px;background:linear-gradient(90deg,transparent,var(--moss),transparent);opacity:.45;animation:fade-line 8s ease-in-out infinite}.hero-glow{position:absolute;left:8%;top:18%;width:min(280px,50vw);height:min(280px,50vw);border-radius:50%;background:radial-gradient(circle,rgba(201,217,176,.35),transparent 70%);filter:blur(8px);animation:pulse-glow 6s ease-in-out infinite;pointer-events:none}.hero-shine{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 35%,rgba(243,247,240,.35) 48%,transparent 62%);background-size:220% 100%;animation:sweep 7s ease-in-out infinite;pointer-events:none;mix-blend-mode:soft-light}.hero-motes{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.hero-motes span{position:absolute;width:5px;height:5px;border-radius:50%;background:#c9d9b0d9;box-shadow:0 0 12px #7a9b6a8c;animation:mote 11s ease-in-out infinite;opacity:0}.hero-motes span:nth-child(1){left:12%;top:70%;animation-delay:0s}.hero-motes span:nth-child(2){left:28%;top:42%;width:3px;height:3px;animation-delay:1.4s;animation-duration:13s}.hero-motes span:nth-child(3){left:55%;top:65%;animation-delay:2.2s}.hero-motes span:nth-child(4){left:72%;top:38%;width:4px;height:4px;animation-delay:.8s;animation-duration:12s}.hero-motes span:nth-child(5){left:84%;top:58%;animation-delay:3s}.hero-motes span:nth-child(6){left:40%;top:28%;width:3px;height:3px;animation-delay:4.1s;animation-duration:14s}@keyframes drift{0%{transform:translate(0) scale(1)}to{transform:translate(-4%,6%) scale(1.06)}}@keyframes fade-line{0%,to{opacity:.2;transform:scaleX(.85)}50%{opacity:.55;transform:scaleX(1)}}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}@keyframes sweep{0%,to{background-position:120% 0}50%{background-position:-20% 0}}@keyframes mote{0%{opacity:0;transform:translateY(18px) scale(.6)}15%{opacity:.9}70%{opacity:.55}to{opacity:0;transform:translateY(-72px) scale(1)}}@keyframes brand-shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes soft-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.hero-brand{position:relative;font-family:var(--font-display);font-size:clamp(3rem,9vw,5.5rem);font-weight:700;margin:0 0 .75rem;animation:rise .9s ease-out both}.hero-brand-text{background:linear-gradient(110deg,var(--deep) 20%,var(--moss) 45%,var(--deep) 70%,var(--leaf) 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:brand-shimmer 8s ease-in-out infinite}.hero-line{position:relative;font-family:var(--font-display);font-size:clamp(1.25rem,3vw,1.75rem);font-weight:500;color:var(--bark);margin:0 0 .75rem;max-width:22ch;animation:rise .9s ease-out .12s both}.hero-support{position:relative;color:var(--muted);max-width:36ch;margin:0 0 1.75rem;animation:rise .9s ease-out .22s both}.cta-row{position:relative;display:flex;flex-wrap:wrap;gap:.75rem;animation:rise .9s ease-out .32s both}.btn-glow{box-shadow:0 0 #7a9b6a59;animation:soft-bounce 3.2s ease-in-out infinite}.btn-glow:hover{box-shadow:0 8px 28px #0a1f1438}.cli-setup{position:relative;margin-top:1rem;padding:2.25rem 0 1rem;border-top:1px solid rgba(26,61,42,.12);animation:rise 1s ease-out .4s both}.cli-eyebrow{margin:0 0 .35rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--moss)}.cli-title{margin:0 0 .5rem;font-size:clamp(1.5rem,3vw,2rem);color:var(--deep)}.cli-lead{margin:0 0 1.5rem;color:var(--muted);max-width:42ch}.cli-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1.35rem}.cli-step{display:grid;grid-template-columns:auto 1fr;gap:.9rem 1rem;align-items:start}.cli-step strong{display:block;color:var(--bark);margin-bottom:.25rem}.cli-step p{margin:0 0 .55rem;color:var(--muted);font-size:.95rem}.cli-step-n{width:1.75rem;height:1.75rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:var(--deep);background:#7a9b6a38;border:1px solid rgba(45,90,61,.25);animation:pulse-glow 5s ease-in-out infinite}.cli-install-row{display:flex;flex-wrap:wrap;gap:.55rem;align-items:stretch}.cli-code{flex:1 1 16rem;margin:0}.cli-copy{flex:0 0 auto;align-self:stretch}.cli-step .code-block{margin-top:.35rem}@media(prefers-reduced-motion:reduce){.hero:before,.hero:after,.hero-glow,.hero-shine,.hero-motes span,.hero-brand,.hero-brand-text,.hero-line,.hero-support,.cta-row,.btn-glow,.cli-setup,.cli-step-n{animation:none!important}.hero-brand-text{color:var(--deep);background:none;-webkit-background-clip:unset;background-clip:unset}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1.15rem;border-radius:var(--radius);border:1px solid transparent;font-weight:600;text-decoration:none;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--deep);color:var(--lichen)}.btn-primary:hover{background:var(--canopy);color:var(--fog)}.btn-ghost{background:transparent;color:var(--leaf);border-color:#2d5a3d59}.btn-ghost:hover{background:#7a9b6a1f;color:var(--deep)}.btn:disabled{opacity:.55;cursor:not-allowed}.page-title{font-size:1.85rem;margin:0 0 .35rem;color:var(--deep)}.page-lead{margin:0 0 1.5rem;color:var(--muted)}.panel{padding:0;margin:0 0 1.5rem}.stack{display:flex;flex-direction:column;gap:.85rem}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-size:.9rem;font-weight:600;color:var(--bark)}.field input,.field textarea,.field select{padding:.65rem .75rem;border:1px solid rgba(26,61,42,.22);border-radius:var(--radius);background:#ffffffa6;color:var(--ink)}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid rgba(122,155,106,.55);outline-offset:1px;border-color:var(--moss)}.field-check{flex-direction:row;align-items:center;gap:.55rem}.field-check input{width:1.05rem;height:1.05rem}.msg{padding:.75rem .9rem;border-radius:var(--radius);font-size:.95rem}.msg-error{background:#8b3a3a1a;color:var(--danger);border:1px solid rgba(139,58,58,.25)}.msg-ok{background:#3d6b4f1a;color:var(--ok);border:1px solid rgba(61,107,79,.25)}.msg-info{background:#7a9b6a1f;color:var(--bark);border:1px solid rgba(122,155,106,.28)}.list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.list-item{padding-bottom:1rem;border-bottom:1px solid rgba(26,61,42,.12)}.list-item:last-child{border-bottom:none}.list-item h3{margin:0 0 .25rem;font-size:1.15rem;color:var(--deep)}.meta{font-size:.88rem;color:var(--muted)}.mono{font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,monospace;font-size:.88rem;word-break:break-all}.code-block{display:block;padding:.85rem 1rem;background:var(--deep);color:var(--lichen);border-radius:var(--radius);font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,monospace;font-size:.92rem;overflow-x:auto}.steps{margin:0 0 1.25rem;padding-left:1.2rem;color:var(--muted)}.steps li{margin-bottom:.4rem}.split-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}@media(max-width:560px){.site-nav{padding:.85rem 1rem}main{width:calc(100% - 1.5rem);padding-top:1.5rem}main.hero-main{width:calc(100% - 1.5rem)}}
