:root{color-scheme:light;--page:#f8faf9;--surface:#fff;--ink:#182823;--muted:#596b63;--line:#dce5df;--soft:#edf3ef;--accent:#18734d;--sans:'Schibsted Grotesk',system-ui,sans-serif;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}
:root[data-theme=dark]{color-scheme:dark;--page:#111a17;--surface:#18241f;--ink:#eef5f0;--muted:#abbcb2;--line:#31443a;--soft:#203128;--accent:#80dba9}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--page);color:var(--ink);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:4px}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}::selection{background:#bce6ca;color:#182823}.skip-link{position:fixed;top:-80px;left:20px;padding:10px 18px;background:var(--surface);z-index:100}.skip-link:focus{top:12px}.shell{max-width:1240px;padding-inline:40px;margin-inline:auto}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.wordmark{font-size:21px;font-weight:600;letter-spacing:-.9px;text-decoration:none;white-space:nowrap}.wordmark span{color:var(--accent)}.site-nav{display:flex;align-items:center;gap:30px;font-size:14px}.site-nav a{text-decoration:none}.site-nav a:hover{text-decoration:underline}.theme-button{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:50%;width:40px;height:40px;display:grid;place-items:center}.theme-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}.hero{display:grid;grid-template-columns:1fr 1.07fr;gap:64px;align-items:center;padding-block:76px 65px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin:0 0 22px}.hero h1{font-size:clamp(45px,4.5vw,65px);line-height:1.06;letter-spacing:-3.6px;font-weight:500;margin:0 0 25px}.hero h1 span{color:var(--accent)}.hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.6;color:var(--muted);max-width:390px;margin-bottom:30px}.cta{display:inline-flex;gap:25px;align-items:center;text-decoration:none;background:var(--ink);color:var(--page);border:0;border-radius:6px;font-size:14px;font-weight:500;padding:14px 22px;transition:transform .2s,background .2s}.cta:hover{transform:translateY(-2px)}.secondary-link{font-size:14px;margin-inline-start:22px;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}.hero-demo{--coin:#dd8315;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 18px 50px #162a2010}.demo-top{display:flex;align-items:center;justify-content:space-between;padding:18px 23px;font-size:12px;border-bottom:1px solid var(--line)}.network-switch{display:flex;gap:5px}.network-switch button{display:grid;place-items:center;width:33px;height:33px;padding:7px;border:1px solid transparent;border-radius:50%;background:var(--soft)}.network-switch button[aria-pressed=true]{border-color:var(--coin);background:var(--surface)}.network-switch img{width:100%;height:100%;object-fit:contain}.diagram{position:relative;padding:22px 25px 5px}.diagram svg{display:block;width:100%;height:auto;overflow:visible}.diagram .wire{fill:none;stroke:var(--line);stroke-width:1.5}.diagram .flow{fill:none;stroke:var(--coin);stroke-width:2;stroke-dasharray:5 7;opacity:0}.hero-demo[data-step="2"] .flow,.hero-demo[data-step="3"] .flow{opacity:1;animation:send 1.2s linear infinite}.diagram .node{fill:var(--surface);stroke:var(--line);stroke-width:1.5;transition:fill .4s,stroke .4s}.diagram text{fill:var(--ink);font-family:var(--sans);font-size:12px}.diagram .small{fill:var(--muted);font-size:10px}.diagram .center{fill:var(--soft);stroke:var(--line)}.hero-demo[data-step="3"] .node{stroke:var(--coin);fill:color-mix(in srgb,var(--coin) 10%,var(--surface))}.diagram .check{opacity:0;fill:var(--accent);transition:opacity .3s}.hero-demo[data-step="3"] .check{opacity:1}.packet{fill:var(--coin);opacity:0}.hero-demo[data-step="1"] .packet{opacity:1}.demo-caption{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:0 24px 18px}.demo-caption strong{font-size:13px;font-weight:500}.demo-caption small{font-size:11px;color:var(--muted)}.demo-controls{padding:18px 23px 20px;background:var(--soft);border-top:1px solid var(--line)}.demo-steps{display:flex;gap:6px;margin-bottom:13px}.demo-steps button{height:4px;flex:1;background:var(--line);border:0;border-radius:3px;padding:0;position:relative}.demo-steps button:after{content:'';position:absolute;inset:-10px 0}.demo-steps button[aria-current=step]{background:var(--coin)}.demo-controls h2{font-size:16px;line-height:1.4;letter-spacing:-.3px;font-weight:600;margin:0 0 6px}.demo-controls p{font-size:13px;line-height:1.5;color:var(--muted);margin:0;min-height:40px}.demo-action{display:flex;justify-content:space-between;align-items:center;margin-top:14px;gap:12px}.demo-action button{border:1px solid var(--line);color:var(--ink);background:var(--surface);border-radius:5px;padding:7px 13px;font-size:12px;font-weight:500}.demo-action .play{color:var(--page);background:var(--ink);border-color:var(--ink)}.demo-action small{font-size:10px;color:var(--muted)}.intro-note{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:13px;padding-block:0 35px}.intro-note span{width:30px;height:1px;background:var(--accent)}.learning-path{padding:32px 35px;border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:.9fr 2fr;gap:38px;align-items:center;background:var(--surface)}.learning-path h2{font-size:22px;line-height:1.25;letter-spacing:-.6px;font-weight:500;margin:0 0 8px}.learning-path p{font-size:13px;color:var(--muted);margin:0}.path-links{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px}.path-links a{text-decoration:none;font-size:14px;line-height:1.5;position:relative}.path-links a:hover strong{text-decoration:underline}.path-links span{display:block;color:var(--accent);font:11px var(--mono);margin-bottom:10px}.path-links strong{font-weight:500}.path-links small{display:block;font-size:12px;color:var(--muted);margin-top:4px}.library{padding-block:66px}.library h2{font-size:35px;font-weight:500;line-height:1.2;letter-spacing:-1.4px;margin:0 0 12px}.library-intro{font-size:15px;color:var(--muted);margin:0 0 23px}.library-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);padding:7px 12px;font-size:13px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--page)}.search{width:220px;background:var(--surface);border:1px solid var(--line);border-radius:6px;color:var(--ink);padding:9px 12px;font-size:13px}.topics{display:grid;grid-template-columns:1fr 1fr;gap:18px}.topic{display:grid;grid-template-columns:60px 1fr;gap:22px;position:relative;padding:27px;background:var(--surface);border:1px solid var(--line);border-radius:10px;transition:transform .2s,border-color .2s}.topic:hover{transform:translateY(-3px);border-color:var(--topic)}.topic[hidden]{display:none}.topic-icon{width:58px;height:58px;border-radius:12px;background:color-mix(in srgb,var(--topic) 10%,var(--surface));display:grid;place-items:center}.topic-icon img{height:32px;width:32px;object-fit:contain}.topic-icon svg{width:28px;height:28px;fill:none;stroke:var(--topic);stroke-width:1.5}.topic h3{font-size:21px;line-height:1.25;font-weight:500;letter-spacing:-.6px;margin:0 0 10px}.topic h3 a{text-decoration:none}.topic h3 a:after{content:'';position:absolute;inset:0}.topic p{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 18px;max-width:37ch}.topic-meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}.topic-meta .arrow{font-size:21px;color:var(--topic)}.empty{padding:25px;border:1px dashed var(--line);border-radius:8px;color:var(--muted)}.arabic{padding:30px 0 35px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}.arabic h2{font-size:20px;font-weight:500;margin:0}.arabic p{font-size:13px;color:var(--muted);margin:4px 0 0}.arabic-links{display:flex;gap:24px;font-size:15px}.site-footer{padding-block:32px 42px;border-top:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:30px;font-size:12px;color:var(--muted)}.site-footer p{margin:0 0 5px}.site-footer nav{display:flex;gap:20px}.site-footer a{text-decoration:none}.site-footer a:hover{text-decoration:underline}.footer-brand{font-size:17px;letter-spacing:-.5px;color:var(--ink);margin-bottom:10px!important}
.topic-icon:has(>img[src$="coins/sui.svg"]){background:#8fcbff}
.hero{padding-block:56px 40px}.network-switch button{width:auto;min-width:44px;height:40px;display:flex;gap:5px;align-items:center;padding:6px 8px;border-radius:6px}.network-switch img{width:16px;height:16px}.network-switch span{font-size:10px;font-weight:500;color:var(--ink)}.demo-steps{gap:8px}.demo-steps button{height:30px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font:11px var(--mono);border-radius:4px}.demo-steps button[aria-current=step]{background:var(--ink);color:var(--page);border-color:var(--ink)}.demo-steps button:after{inset:0}.demo-action button[hidden]{display:none}
@keyframes send{to{stroke-dashoffset:-24}}
.diagram .scene-route{fill:none;stroke:var(--line);stroke-width:2}.diagram .scene-flow{fill:none;stroke:var(--coin);stroke-width:2.4;stroke-dasharray:6 7;opacity:0}.wallet rect,.peer rect,.payment-record>rect{fill:var(--surface);stroke:var(--line);stroke-width:1.5;transition:fill .5s,stroke .5s}.diagram .wallet-name{font-size:13px;fill:var(--muted)}.diagram .wallet-balance{font-size:23px;font-weight:500;letter-spacing:-.6px}.wallet-glyph{fill:none;stroke:var(--muted);stroke-width:1.2;opacity:.55}.ledger-shadow rect{fill:var(--soft);stroke:var(--line);stroke-width:1.2}.ledger-shadow{opacity:0;transition:opacity .5s}.payment-record>rect{fill:color-mix(in srgb,var(--coin) 6%,var(--surface));stroke:color-mix(in srgb,var(--coin) 35%,var(--line))}.diagram .payment-record text{font-size:13px;font-weight:500}.record-rule{stroke:var(--line);stroke-width:1}.diagram .record-key{font-size:13px;fill:var(--muted)}.diagram .record-amount{font-size:19px;font-weight:600}.record-status{fill:var(--line);opacity:.6}.record-check{fill:none;stroke:var(--surface);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0}.diagram .peer-title{font-size:13px}.diagram .peer-status{font-size:11px;fill:var(--muted)}.diagram .scene-status{font-size:12px;fill:var(--muted)}.signed-packet,.accepted-packet{opacity:0;pointer-events:none}.signed-packet rect{fill:var(--coin);stroke:var(--surface);stroke-width:2}.signed-packet path{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.accepted-packet circle{fill:var(--surface);stroke:var(--coin);stroke-width:1.5}.hero-demo[data-step="0"] .sender rect{stroke:var(--coin)}.hero-demo[data-step="1"] .outbound,.hero-demo[data-step="2"] .broadcast,.hero-demo[data-step="3"] .delivery{opacity:1;animation:send 1s linear infinite}.hero-demo[data-step="1"] .signed-packet{animation:sign-and-send 3.3s ease-in-out infinite}.hero-demo[data-step="2"] .ledger-shadow,.hero-demo[data-step="3"] .ledger-shadow{opacity:1}.hero-demo[data-step="2"] .peer rect{animation:checking 1.5s ease-in-out infinite}.hero-demo[data-step="2"] .peer-two rect{animation-delay:.4s}.hero-demo[data-step="3"] .peer rect,.hero-demo[data-step="3"] .recipient rect{stroke:var(--coin);fill:color-mix(in srgb,var(--coin) 8%,var(--surface))}.hero-demo[data-step="3"] .record-status{fill:var(--accent);opacity:1}.hero-demo[data-step="3"] .record-check{opacity:1}.hero-demo[data-step="3"] .accepted-packet{animation:payment-accepted 3.8s ease-in-out infinite}.hero-demo[data-step="3"] .recipient .wallet-balance{fill:var(--accent)}
@keyframes sign-and-send{0%{opacity:0;transform:translate(96px,94px)}12%{opacity:1;transform:translate(96px,94px)}40%{transform:translate(96px,137px)}65%{opacity:1;transform:translate(175px,151px)}85%,100%{opacity:0;transform:translate(185px,151px)}}
@keyframes payment-accepted{0%,12%{opacity:0;transform:translate(315px,151px)}22%{opacity:1;transform:translate(315px,151px)}52%{transform:translate(408px,151px)}78%{opacity:1;transform:translate(408px,95px)}92%,100%{opacity:0;transform:translate(408px,95px)}}
@keyframes checking{50%{stroke:var(--coin);fill:color-mix(in srgb,var(--coin) 12%,var(--surface))}}
.hero-demo[data-playing="false"] .diagram *{animation-play-state:paused!important}
.experiment-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:17px;padding-block:12px;border-block:1px solid var(--line)}.experiment-action span{font-size:11px;color:var(--muted)}.experiment-action button{font-size:11px;font-weight:500;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:5px;padding:8px 10px}.experiment-action button:hover{border-color:var(--coin)}.proof-state[data-state=valid]{color:var(--accent)}.proof-state[data-state=invalid]{color:#bc4136}.model-note{font-size:10px;color:var(--muted);margin-top:12px}.model-note summary{cursor:pointer;list-style-position:inside}.model-note p{font-size:11px;line-height:1.6;margin-top:9px;min-height:0}.hero-demo[data-proof=invalid] .payment-record>rect,.hero-demo[data-proof=invalid] .peer rect{stroke:#c74e43;fill:color-mix(in srgb,#c74e43 8%,var(--surface));animation:none}.hero-demo[data-proof=invalid] .record-amount,.hero-demo[data-proof=invalid] .peer-status{fill:#c74e43}.hero-demo[data-proof=invalid] .record-check,.hero-demo[data-proof=invalid] .accepted-packet,.hero-demo[data-proof=invalid] .delivery{display:none}.hero-demo[data-proof=invalid] .recipient rect{stroke:var(--line);fill:var(--surface)}.hero-demo[data-proof=invalid] .recipient .wallet-balance{fill:var(--ink)}.hero-demo[data-proof=invalid] .record-status{fill:#c74e43}.hero-demo[data-proof=invalid] .ledger-shadow{opacity:0}
@media(max-width:1000px){.hero{gap:35px}.hero h1{font-size:51px}.shell{padding-inline:28px}.learning-path{gap:25px;padding:26px}.topic{padding:22px;gap:17px}.secondary-link{display:inline-block;margin:15px 0 0}.site-nav{gap:20px}}
@media(max-width:740px){.shell{padding-inline:20px}.site-header{height:72px}.wordmark{font-size:19px}.site-nav{gap:15px}.site-nav .optional{display:none}.hero{grid-template-columns:1fr;gap:36px;padding-block:43px 34px}.hero h1{font-size:52px;letter-spacing:-2.8px}.hero-copy>p:not(.eyebrow){font-size:17px;max-width:33ch;margin-bottom:22px}.eyebrow{margin-bottom:17px}.secondary-link{margin:0 0 0 20px}.hero-demo{max-width:560px;width:100%;margin:auto}.learning-path{grid-template-columns:1fr;gap:23px;padding:25px}.path-links{gap:15px}.path-links a{font-size:13px}.path-links small{font-size:11px}.library{padding-block:43px}.library h2{font-size:30px}.library-tools{align-items:stretch;flex-direction:column;gap:14px}.search{width:100%}.filters{gap:3px}.topics{grid-template-columns:1fr}.topic{padding:23px}.arabic{align-items:flex-start;flex-direction:column;gap:18px}.arabic-links{gap:23px;flex-wrap:wrap}.site-footer{flex-direction:column;gap:20px}.intro-note{font-size:12px;gap:12px}.demo-top{padding:14px 18px}.diagram{padding:20px 15px 5px}}
@media(max-width:740px){.diagram text{font-size:18px}.diagram .small{font-size:17px}.demo-top{gap:8px;font-size:11px}.network-switch{gap:3px}.network-switch button{padding:5px 6px;min-width:44px}.diagram{padding-inline:5px}.hero{padding-block:40px 32px}.diagram .wallet-name{font-size:17px}.diagram .wallet-balance{font-size:25px}.diagram .payment-record text,.diagram .record-key{font-size:16px}.diagram .record-amount{font-size:23px}.diagram .peer-title{font-size:17px}.diagram .peer-status{font-size:16px}.diagram .scene-status{font-size:17px}.wallet-glyph{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-demo .flow{stroke-dasharray:none}}
