:root{color-scheme:dark;--background:#0a0d16;--surface:#121828;--sky-top:#060812;--sky-bottom:#101528;--text-primary:#e6eaf4;--text-secondary:#9aa5bd;--border:#232c44;--accent:#8fb4e8;--moon:#f2efe2;--moon-glow:rgba(210,220,255,0.14);--wolf:#05070d;--ridge:#0d1220;--copy-halo:rgba(6,8,18,0.92);--danger:#e06c68;--success:#5dbd85}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;transition:background .4s ease,color .4s ease}::selection{background:var(--accent);color:var(--background)}.stage-wrap{position:relative;height:330vh;background:linear-gradient(var(--sky-top),var(--sky-bottom));transition:background .4s ease}.stage-sticky{position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:hidden}.stage-scene{position:absolute;inset:0;width:100%;height:100%;display:block}.stage-copy{position:absolute;z-index:3;transition:opacity .25s linear}.stage-copy-hero{top:50%;left:7vw;transform:translateY(-50%);max-width:min(46vw,560px)}.stage-copy-hero h1{font-size:clamp(3rem,7.2vw,5.6rem);letter-spacing:.2em;text-indent:.2em;font-weight:800;line-height:1}.stage-tagline{font-size:clamp(1.15rem,2.1vw,1.55rem);color:var(--text-primary);margin-top:18px;font-weight:500}.stage-sub{font-size:clamp(.92rem,1.15vw,1.02rem);color:var(--text-secondary);margin-top:12px;max-width:44ch;line-height:1.65}.stage-copy-hero .hero-cta{justify-content:flex-start;margin-top:26px}@media (max-width:820px){.stage-copy-hero{top:7vh;left:0;right:0;transform:none;max-width:none;padding:0 8vw;text-align:center}.stage-sub{margin-left:auto;margin-right:auto}.stage-copy-hero .hero-cta{justify-content:center}}.stage-copy-pack{left:5vw;bottom:8vh;max-width:430px;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:14px;padding:18px 22px 20px;box-shadow:0 14px 40px rgba(0,0,0,.28)}.stage-copy-pack h2{margin:6px 0 10px;font-size:clamp(1.5rem,3.4vw,2.1rem)}.stage-copy-pack p{color:var(--text-secondary);font-size:.95rem;margin:0}@media (max-width:760px){.stage-wrap{height:300vh}.stage-copy-pack{left:5vw;right:5vw;bottom:6vh;max-width:none}}.hero-cta{margin-top:26px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.btn{display:inline-block;padding:11px 22px;border-radius:8px;font-weight:600;font-size:.95rem;text-decoration:none;border:1px solid var(--border);color:var(--text-primary);background:var(--surface);transition:transform .15s ease,border-color .15s ease}.btn:hover{transform:translateY(-2px)}.btn.primary,.btn:hover{border-color:var(--accent)}.btn.primary{background:var(--accent);color:var(--background)}section{padding:90px 24px}.wrap{max-width:1020px;margin:0 auto}.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:700}h2{font-size:clamp(1.7rem,4vw,2.5rem);margin:10px 0 16px;line-height:1.2}.lede{color:var(--text-secondary);max-width:62ch;font-size:1.05rem}.sec-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(268px,1fr));grid-gap:16px;gap:16px;margin-top:36px}.sec-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:12px;padding:20px 22px}.sec-card h3{font-size:1rem;margin-bottom:8px}.sec-card p{color:var(--text-secondary);font-size:.92rem}.sec-score{display:flex;align-items:center;gap:20px;margin-top:20px;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--success);border-radius:12px;padding:18px 22px}.sec-score-num{font-size:clamp(2.2rem,5vw,3rem);font-weight:800;color:var(--success);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex:none}.sec-score p{color:var(--text-secondary);font-size:.92rem;margin-top:6px}@media (max-width:560px){.sec-score{flex-direction:column;align-items:flex-start;gap:8px}}.oss-note code,.sec-score code{font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;color:var(--text-primary);background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:5px;padding:2px 6px;display:inline-block;margin-top:4px;word-break:break-word}.map-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:16px;gap:16px;margin-top:36px}.map-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px}.map-card .from{font-weight:700;font-size:1.05rem}.map-card .arrow{color:var(--accent);margin:0 6px}.map-card p{color:var(--text-secondary);font-size:.92rem;margin-top:8px}.sub-head{margin-top:54px;font-size:clamp(1.15rem,2.2vw,1.45rem);font-weight:700}.sub-head+.lede{margin-top:10px}.graph-panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px;margin-top:36px;overflow-x:auto}.graph-panel svg{min-width:720px;width:100%;height:auto;display:block}.roll{margin-top:26px}.roll-stage{display:flex;align-items:stretch;flex-wrap:nowrap}.roll-panel{flex:1 1 auto;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.roll-cold{flex:0 0 clamp(190px,26%,250px)}.roll-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:9px 14px;border-bottom:1px solid var(--border);font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.roll-sub{font-weight:400;letter-spacing:0;text-transform:none;color:var(--text-secondary)}.roll-rows{padding:10px 14px 12px;display:flex;flex-direction:column;gap:7px}.roll-row{display:flex;align-items:center;gap:10px;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;color:var(--text-secondary);transition:opacity .45s ease,transform .45s ease}.roll-day{flex:none;width:52px}.roll-bar{height:9px;border-radius:999px;background:color-mix(in srgb,var(--accent) 55%,transparent);transition:width .3s ease,background .4s ease}.roll-count{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex:none}.roll-row.is-today .roll-bar{background:var(--accent)}.roll-row.is-rolling,.roll-row.is-today .roll-count{color:var(--text-primary)}.roll-row.is-rolling .roll-bar{background:var(--moon)}[data-phase=drop] .roll-row.is-rolling{opacity:0;transform:translateX(18px)}.roll-track{position:relative;flex:0 0 clamp(70px,12%,130px);align-self:center;height:2px;background:linear-gradient(90deg,var(--border),var(--accent));opacity:.55}.roll-packet{position:absolute;top:50%;left:0;white-space:nowrap;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6rem;font-weight:700;padding:4px 8px;border-radius:6px;background:var(--moon);color:#0a0d16;animation:roll-fly 1.25s ease-in-out forwards}@keyframes roll-fly{0%{transform:translate(-46%,-50%) scale(.7);opacity:0}18%{opacity:1;transform:translate(-30%,-50%) scale(1)}82%{opacity:1}to{transform:translate(calc(100% + 26px),-50%) scale(.94);opacity:0}}.roll-ok{position:absolute;top:50%;right:-6px;transform:translate(30%,-50%);font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.58rem;padding:3px 7px;border-radius:999px;background:var(--surface);border:1px solid var(--success);color:var(--success);white-space:nowrap;opacity:0;transition:opacity .3s ease}[data-phase=drop] .roll-ok,[data-phase=verify] .roll-ok{opacity:1}.roll-tiles{padding:10px 12px 12px;display:flex;flex-direction:column;gap:7px;min-height:150px}.roll-tile{border:1px solid var(--border);border-radius:8px;padding:7px 9px;background:color-mix(in srgb,var(--background) 60%,transparent);font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.62rem;color:var(--text-secondary);display:flex;justify-content:space-between;gap:8px;animation:tile-in .5s ease both}.roll-tile-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roll-tile-size{flex:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.roll-tile.is-new{border-color:var(--success);color:var(--text-primary)}@keyframes tile-in{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:none}}.roll-status{margin-top:14px;display:flex;align-items:center;gap:10px;font-size:.84rem;color:var(--text-secondary);font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace}.roll-phase{background:var(--accent);color:var(--background);border-radius:5px;padding:2px 8px;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;flex:none}@media (max-width:760px){.roll-stage{flex-wrap:wrap}.roll-cold,.roll-panel{flex:1 1 100%}.roll-track{flex:0 0 100%;margin:20px 0}.roll-ok{right:0;transform:translateY(-50%)}.roll-status{min-height:3.2em;align-items:flex-start}}.tail{margin-top:36px}.tail-stage{display:flex;align-items:center;gap:0;flex-wrap:nowrap}.tail-panel{flex:1 1 auto;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.tail-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--border);font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.74rem;color:var(--text-secondary)}.tail-offset b{color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tail-body{position:relative;padding:6px 0;overflow:hidden}.tail-line{position:absolute;left:0;right:0;height:24px;display:flex;align-items:center;gap:8px;padding:0 14px;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;white-space:nowrap;transition:top .35s ease,opacity .5s ease,color .5s ease}.tail-text{overflow:hidden;text-overflow:ellipsis}.tail-gutter{color:var(--accent);opacity:.7;flex:none}.tail-line.is-shipped{color:var(--text-secondary);opacity:.45}.tail-line.is-shipped .tail-gutter{opacity:.3}.tail-line.is-pending{color:var(--text-primary)}.tail-line.is-pending.warn{color:#d99a2b}.tail-line.is-pending.error{color:var(--danger)}[data-phase=read] .tail-line.is-pending{background:color-mix(in srgb,var(--accent) 9%,transparent)}[data-phase=classify] .tail-line.is-pending:not(.is-partial),[data-phase=read] .tail-line.is-pending:not(.is-partial),[data-phase=ship] .tail-line.is-pending:not(.is-partial){background:color-mix(in srgb,var(--accent) 16%,transparent)}.tail-line.is-partial{opacity:.72}.tail-line.is-partial .tail-gutter,.tail-nonewline{color:var(--text-secondary)}.tail-nonewline{margin-left:8px;font-size:.58rem;letter-spacing:.06em;text-transform:uppercase;border:1px dashed var(--border);border-radius:4px;padding:1px 5px;flex:none}.tail-caret{display:inline-block;width:7px;height:14px;background:var(--accent);animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:0}}.tail-cursor{left:0;right:0;top:-1px;height:2px;z-index:2;transition:transform .55s cubic-bezier(.4,0,.2,1)}.tail-cursor,.tail-cursor:before{position:absolute;background:var(--accent)}.tail-cursor:before{content:"";left:4px;top:-4px;width:10px;height:10px;border-radius:50%}.tail-cursor-tag{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:.58rem;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);background:var(--surface);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:999px;padding:1px 8px;line-height:1.5;white-space:nowrap}.tail-wire{position:relative;flex:0 0 130px;height:2px;background:linear-gradient(90deg,var(--border),var(--accent));opacity:.5}.tail-ack,.tail-packet{position:absolute;top:50%;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:.62rem;padding:3px 7px;border-radius:5px;white-space:nowrap;opacity:0}.tail-packet{left:0;background:var(--accent);color:var(--background);font-weight:700;transform:translate(-40%,-50%)}.tail-ack{right:0;background:var(--surface);border:1px solid var(--success);color:var(--success);transform:translate(40%,-50%)}[data-phase=ship] .tail-packet{animation:packet-fly 1.3s ease-in-out forwards}@keyframes packet-fly{0%{transform:translate(-40%,-50%) scale(.85);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translate(calc(130px - 60%),-50%) scale(1);opacity:0}}[data-phase=ack] .tail-ack{animation:ack-pop .75s ease forwards}@keyframes ack-pop{0%{opacity:0;transform:translate(40%,-50%) scale(.8)}30%{opacity:1;transform:translate(40%,-50%) scale(1)}to{opacity:0;transform:translate(-10%,-50%) scale(1)}}.tail-server{flex:0 0 132px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 10px;font-size:.78rem}.tail-server b{display:block}.tail-server span{display:block;font-size:.66rem;color:var(--text-secondary);margin-top:2px}.tail-moon{width:26px;height:26px;border-radius:50%;background:var(--moon);margin:0 auto 8px;box-shadow:0 0 0 6px var(--moon-glow);transition:box-shadow .3s ease}[data-phase=ack] .tail-moon,[data-phase=classify] .tail-moon,[data-phase=commit] .tail-moon{box-shadow:0 0 0 10px var(--moon-glow)}.tail-server{position:relative}.tail-alert{position:absolute;left:50%;bottom:-14px;transform:translate(-50%,6px);display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--danger);background:var(--surface);border:1px solid var(--danger);border-radius:999px;padding:3px 9px;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease}.tail-alert-dot{width:6px;height:6px;border-radius:50%;background:var(--danger)}.tail-server.has-alert .tail-alert{opacity:1;transform:translate(-50%)}.tail-server.has-alert .tail-alert-dot{animation:alert-blink .7s steps(2) infinite}@keyframes alert-blink{50%{opacity:.25}}.tail-status{margin-top:16px;display:flex;align-items:center;gap:10px;font-size:.86rem;color:var(--text-secondary);font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace}.tail-phase{background:var(--accent);color:var(--background);border-radius:5px;padding:2px 8px;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;flex:none}@media (max-width:760px){.tail-stage{flex-wrap:wrap;justify-content:center}.tail-status{min-height:3.2em;align-items:flex-start}.tail-panel{flex:1 1 100%}.tail-wire{flex:0 0 90px;margin:22px 0}.tail-server{margin-top:22px}.tail-line{font-size:.68rem}@keyframes packet-fly{0%{transform:translate(-40%,-50%) scale(.85);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translate(calc(90px - 60%),-50%) scale(1);opacity:0}}}.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:16px;gap:16px;margin-top:36px}.feat{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px}.feat h3{font-size:1.02rem;margin-bottom:6px}.feat p{color:var(--text-secondary);font-size:.92rem}.feat .stat{font-size:1.6rem;font-weight:700;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.quickstart pre{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px;overflow-x:auto;font-size:.88rem;line-height:1.7;margin-top:30px;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace}.quickstart .c{color:var(--text-secondary)}.quickstart .k{color:var(--accent);font-weight:600}.oss-note{margin-top:20px;border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--surface);border-radius:8px;padding:14px 18px;font-size:.94rem}.oss-note,footer{color:var(--text-secondary)}footer{border-top:1px solid var(--border);padding:34px 24px 60px;text-align:center;font-size:.88rem}footer b{color:var(--text-primary)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.in-view{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,body{transition:none!important}.reveal{opacity:1!important;transform:none!important}.howl-line,.shooting,.star{animation:none!important}}@keyframes howl-drift{to{stroke-dashoffset:-26}}.howl-line{animation:howl-drift 2.4s linear infinite}.star{opacity:var(--o,.5);animation-name:twinkle;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}@keyframes twinkle{0%{opacity:var(--o,.5)}to{opacity:calc(var(--o, .5) * .3)}}.shooting{animation-name:shoot;animation-timing-function:linear;animation-fill-mode:forwards;will-change:transform,opacity}@keyframes shoot{0%{transform:translate(0) scale(.7);opacity:0}8%{opacity:1;transform:translate(calc(var(--dx) * .08),calc(var(--dy) * .08)) scale(1)}62%{opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(1);opacity:0}}.wolf-cry{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:18px;gap:18px;margin-top:26px}.wolf-cry>*{min-width:0}@media (max-width:820px){.wolf-cry{grid-template-columns:1fr}}.cry-out,.cry-stream{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px 16px 16px}.cry-head{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:12px}.cry-lines{display:flex;flex-direction:column;gap:7px;height:190px;overflow:hidden}.cry-line{display:flex;align-items:baseline;gap:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.74rem;line-height:1.45;padding:6px 9px;border-radius:7px;border:1px solid transparent;background:rgba(255,255,255,.02);animation:cry-in .35s ease-out;transition:opacity .4s ease,border-color .4s ease,background .4s ease}@keyframes cry-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.cry-text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.cry-ignored{opacity:.34}.cry-folded{border-color:rgba(143,180,232,.28);background:rgba(143,180,232,.06)}.cry-paged{border-color:rgba(224,108,104,.5);background:rgba(224,108,104,.09)}.cry-tag{flex:none;font-family:var(--font-sans,inherit);font-size:.62rem;letter-spacing:.04em;color:var(--text-secondary);white-space:nowrap}.cry-tag-fold{color:var(--accent)}.cry-tag-page{color:var(--danger)}.cry-tag-wait{opacity:0}@media (max-width:600px){.cry-line{flex-wrap:wrap;row-gap:2px}.cry-text{flex:1 1 100%;white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.cry-tag{min-height:1em}.cry-lines{height:358px}.cry-inbox{height:152px}.cry-mail-body{white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}}.cry-inbox{display:flex;flex-direction:column;gap:8px;height:118px;overflow:hidden}.cry-empty{font-size:.78rem;color:var(--text-secondary);opacity:.7;font-style:italic}.cry-mail{display:flex;flex-direction:column;gap:3px;padding:9px 11px;border-radius:8px;border:1px solid rgba(224,108,104,.4);background:rgba(224,108,104,.08);animation:cry-in .4s ease-out}.cry-mail-sub{font-size:.7rem;letter-spacing:.05em;color:var(--danger)}.cry-mail-body{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.7rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cry-counts{display:flex;flex-direction:column;gap:4px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-size:.76rem;color:var(--text-secondary)}.cry-counts b{color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cry-digest{margin-top:10px;font-size:.74rem;color:var(--text-secondary);padding:8px 10px;border-radius:7px;background:rgba(143,180,232,.07);border:1px solid rgba(143,180,232,.2);min-height:56px}.cry-digest-wait{visibility:hidden}.cry-digest b{color:var(--accent)}.cry-guards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:14px;gap:14px;margin-top:30px}.cry-guard{border:1px solid var(--border);border-radius:10px;padding:14px 16px;background:var(--surface)}.cry-guard h4{font-size:.82rem;margin:0 0 6px;color:var(--text-primary)}.cry-guard p{margin:0;font-size:.8rem;line-height:1.55;color:var(--text-secondary)}