/* Original Money Musk Cyber tokens and bundled typefaces. No remote assets. */
@font-face{font-family:'Space Grotesk';src:url('space-grotesk.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('jetbrains-mono.woff2') format('woff2');font-style:normal;font-weight:100 800;font-display:swap}
@font-face{font-family:'Major Mono Display';src:url('major-mono-display.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{color-scheme:dark;--background:#050008;--bg-2:#0a0014;--foreground:#e6f9f4;--dim:#a4adb8;--cyan:#00ffcc;--magenta:#ff2bd6;--purple:#c77dff;--gold:#f4c95d;--line:rgba(0,255,204,.2);--grid:rgba(0,255,204,.035);--font-sans:'Space Grotesk',system-ui,sans-serif;--font-mono:'JetBrains Mono',ui-monospace,monospace;--font-display:'Major Mono Display',monospace;font-family:var(--font-sans);background:var(--background);color:var(--foreground)}
*{box-sizing:border-box}
body{margin:0;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px),radial-gradient(ellipse at 10% 0%,rgba(255,43,214,.08),transparent 50%),radial-gradient(ellipse at 90% 100%,rgba(0,255,204,.06),transparent 50%);background-size:40px 40px,40px 40px,100% 100%,100% 100%;min-height:100vh}
/* Texture stays behind content, so it cannot obscure evidence or QR pixels. */
.site-header{position:relative;z-index:5;background:rgba(5,0,8,.96);border-bottom:1px solid var(--line);background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.015) 0,rgba(255,255,255,.015) 1px,transparent 1px,transparent 3px)}
.site-header::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.5;pointer-events:none}
.site-header-inner{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0;color:var(--foreground)}
.brand img{width:112px;height:112px;object-fit:cover;border-radius:50%;border:2px solid rgba(0,255,204,.7);box-shadow:0 0 40px rgba(0,255,204,.7),0 0 80px rgba(255,43,214,.4)}
.wordmark{font-family:var(--font-display);font-size:20px;letter-spacing:.04em;color:var(--foreground)}
.wordmark span{color:var(--magenta)}
.site-controls{position:relative}.site-controls,.desktop-links{display:flex;align-items:center;gap:12px}
.desktop-links a,.menu-links a{display:flex;flex-direction:column;gap:4px;text-decoration:none;padding:12px 16px;border:1px solid transparent;font-family:var(--font-mono);color:var(--dim);min-height:48px}
.desktop-links a>span,.menu-links a>span{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--foreground)}
.desktop-links small,.menu-links small{font-size:.62rem;letter-spacing:.06em}
.desktop-links [aria-current],.menu-links [aria-current]{border-color:rgba(199,125,255,.3);box-shadow:0 0 14px rgba(199,125,255,.16);background:rgba(199,125,255,.04)}
.desktop-links [aria-current]>span,.menu-links [aria-current]>span{color:var(--cyan)}
.desktop-links a:hover,.menu-links a:hover{border-color:var(--cyan)}
.theme-label{display:flex;align-items:center;gap:9px;padding:12px;border:1px solid var(--line);font:12px var(--font-mono);color:var(--dim);letter-spacing:.04em;white-space:nowrap}
.theme-label>span{width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}
.mobile-menu{display:none}
main{max-width:1080px;margin:auto;padding:0 16px 48px;position:relative}
 a{color:var(--cyan);text-underline-offset:4px}a:hover{color:var(--foreground)}
.context-nav{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:24px 0 0;font:.68rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}
.context-nav>span:first-child{color:var(--cyan)}.context-nav>span>span{color:var(--magenta);padding:0 6px}
.boundary{border:1px solid rgba(244,201,93,.22);border-left:3px solid var(--gold);border-radius:10px;padding:14px 16px;background:rgba(244,201,93,.045);color:#e9d9af;font-size:.86rem;line-height:1.6;margin:24px 0 0}.boundary strong{color:var(--gold)}
.masthead{padding:40px 0 20px;max-width:780px}
.eyebrow{font:500 .72rem/1.6 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--cyan);margin:0 0 12px}
h1,h2,h3{font-family:var(--font-sans);color:var(--foreground)}
h1{font-size:clamp(2rem,6vw,3rem);line-height:1.05;letter-spacing:-.02em;margin:0;font-weight:700}
.tagline{font-size:clamp(1.1rem,3.4vw,1.5rem);line-height:1.4;font-weight:700;color:var(--cyan);margin:8px 0 18px}
.slogan{font-size:clamp(.95rem,2.6vw,1.15rem);font-style:italic;color:var(--foreground);margin:0 0 16px}
.lead{font-size:1rem;max-width:62ch;line-height:1.6;margin-bottom:0}
h2{font-size:1.45rem;letter-spacing:-.02em;margin:0 0 12px;line-height:1.3}h3{font-size:1.05rem;line-height:1.4}
p{line-height:1.6;color:var(--dim);overflow-wrap:anywhere}strong{color:var(--foreground)}
.toolbar{display:flex;align-items:center;gap:12px 20px;flex-wrap:wrap;padding:12px 0 18px;border-bottom:1px solid var(--line);font-size:.85rem}.toolbar button{margin:0}.toolbar [role=status]{flex-basis:100%;color:var(--dim)}
.columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}
section{background:linear-gradient(135deg,rgba(255,43,214,.018),transparent 65%),#0c0b14;border:1px solid var(--line);padding:26px;border-radius:14px;margin-top:24px;min-width:0;scroll-margin-top:24px}
section>.eyebrow{color:var(--purple);font-size:.68rem;letter-spacing:.14em}
#receiver{border-top:2px solid var(--magenta)}#payer{border-top:2px solid var(--cyan)}#comparison{border-top:2px solid var(--purple)}
.step-nav{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.step-nav a{font:.76rem var(--font-mono);display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 16px;border:1px solid var(--line);border-radius:8px;text-decoration:none;background:var(--bg-2)}.step-nav span{color:var(--purple)}
.hint{font-size:.84rem}button,input,textarea{font:inherit}
button{min-height:46px;max-width:100%;border:1px solid rgba(0,255,204,.28);border-radius:8px;background:rgba(0,255,204,.045);color:var(--foreground);padding:11px 16px;margin:8px 8px 8px 0;cursor:pointer;font:500 .8rem/1.5 var(--font-mono);overflow-wrap:anywhere;transition:border-color .15s,background-color .15s}
button:hover:not(:disabled){border-color:var(--cyan);background:rgba(0,255,204,.09)}button:disabled{color:#a3a6b4;background:#15111c;border-color:#3b3447;cursor:not-allowed}
button.primary{color:var(--background);background:var(--cyan);font-weight:700;border-color:var(--cyan)}button.primary:hover:not(:disabled){color:var(--background);background:#6effe2;border-color:#6effe2}
#sign.primary,#sign-request.primary,#sign-payment.primary{background:var(--magenta);border-color:var(--magenta)}
#sign.primary:hover:not(:disabled),#sign-request.primary:hover:not(:disabled),#sign-payment.primary:hover:not(:disabled){background:#ff7de5;border-color:#ff7de5}
button.primary:disabled,#sign.primary:disabled,#sign-request.primary:disabled,#sign-payment.primary:disabled{color:#a3a6b4;background:#25152a;border-color:#604260}
label{display:block;margin:18px 0 8px;font:.8rem/1.55 var(--font-mono);color:#c1c8d2}
input,textarea{width:100%;background:#07060c;color:var(--foreground);border:1px solid rgba(0,255,204,.23);border-radius:8px;padding:12px;min-width:0;font-size:16px;line-height:1.55}input:focus,textarea:focus{border-color:var(--cyan)}
textarea{font-family:var(--font-mono);resize:vertical;overflow-wrap:anywhere;word-break:break-all}textarea[readonly]{color:#c4e8e1}textarea::placeholder{color:#92949f}
input[type=file]{font-family:var(--font-sans);font-size:14px}input::file-selector-button{font:500 .75rem var(--font-mono);padding:10px;border:1px solid var(--line);border-radius:4px;background:#172029;color:var(--foreground);margin-right:10px;cursor:pointer}
pre{white-space:pre-wrap;overflow-wrap:anywhere;font:.78rem/1.7 var(--font-mono);color:#b8c6cd;max-height:420px;overflow:auto;background:rgba(0,0,0,.26);border-left:2px solid rgba(199,125,255,.35);padding:12px 14px}pre:empty{display:none}
code{font-family:var(--font-mono);font-size:.86em;color:#c8d9df}
canvas{display:block;max-width:100%;height:auto;margin:24px auto;background:white;image-rendering:pixelated}video{width:100%;max-height:330px}
[role=status]{white-space:pre-line;overflow-wrap:anywhere}section [role=status]:not(:empty){border:1px solid var(--line);border-left:3px solid var(--cyan);border-radius:8px;background:rgba(0,255,204,.035);padding:12px 14px;font-size:.86rem;color:var(--foreground)}
#request-export,#payment-export,#export{border-top:1px solid rgba(255,43,214,.3);margin-top:20px;padding-top:14px}#export h3,#payment-export h3{color:var(--gold);font-family:var(--font-mono)}
#history button{display:block;width:100%;text-align:left;overflow-wrap:anywhere;font-size:.8rem}
.evidence-card{border:1px solid rgba(199,125,255,.3);border-radius:10px;padding:18px;margin:18px 0;background:#100e19;min-width:0}
.evidence-card h3{margin:0 0 10px;color:var(--cyan)}.evidence-pending{color:var(--gold);font:.72rem/1.7 var(--font-mono)}
.evidence-card dl{margin:18px 0}.evidence-card dl>div{padding:12px 0;border-top:1px solid rgba(199,125,255,.16)}
.evidence-card dt{color:var(--purple);font-weight:600;font-size:.85rem;margin-bottom:6px}
.evidence-card dd{margin:0;color:var(--foreground);white-space:pre-line;overflow-wrap:anywhere;font:.75rem/1.75 var(--font-mono)}
.evidence-ids p{font:.72rem/1.75 var(--font-mono);color:var(--dim)}
.evidence-ids summary,.technical-details summary,.handoff-guide summary{cursor:pointer;min-height:44px;padding:12px 0;color:var(--cyan);font:.8rem/1.65 var(--font-mono)}
.handoff-guide{border:1px solid var(--line);border-radius:10px;padding:4px 20px;margin:18px 0}.handoff-guide li{padding:8px 0;line-height:1.7;color:var(--dim)}.handoff-guide li::marker{color:var(--magenta);font-family:var(--font-mono)}.handoff-guide strong{color:var(--foreground)}.handoff-guide p{font-size:.85rem}
.tamper-exercise{margin-top:22px;padding-top:12px;border-top:1px solid rgba(244,201,93,.25)}.tamper-exercise h3{color:var(--gold)}.tamper-exercise p{font-size:.85rem}
footer{padding:32px 0 0;margin-top:32px;border-top:1px solid var(--line);font-size:.84rem;line-height:1.7;position:relative}footer::before{content:'';position:absolute;top:-1px;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--magenta),var(--cyan),var(--purple));opacity:.6;pointer-events:none}
.footer-brand{margin:0 0 20px}.footer-creed{font:.68rem/1.7 var(--font-mono);text-transform:uppercase;letter-spacing:.16em;color:var(--foreground);margin:28px 0 0}
.device-guide section p{max-width:82ch}.device-guide section h2{color:var(--foreground)}[hidden]{display:none!important}
/* Guide accents follow the original palette; every cue retains its text label. */
.device-guide .guide-heading{color:var(--cyan)}
.device-guide .guide-support,.device-guide .guide-phone{color:var(--purple)}
.device-guide .guide-step-number,.device-guide .guide-sign{color:var(--magenta)}
.device-guide .guide-action,.device-guide .guide-laptop{color:var(--cyan)}
.device-guide .guide-pending,.device-guide .guide-refusal{color:var(--gold)}
/* Readable signing instructions: opaque panels, generous type and wrapping commands. */
.signing-guide{max-width:960px;font-size:1.125rem}
.signing-guide .masthead{max-width:760px}
.signing-guide .lead,.signing-guide section p,.signing-guide li,.signing-guide .guide-return{font-size:1.125rem;line-height:1.8;color:#d5e2ec}
.signing-guide section{background:#100e19;padding:clamp(20px,4vw,36px)}
.signing-guide section p,.signing-guide ul{max-width:70ch}
.signing-guide section h2{color:var(--cyan);font-size:1.5rem;line-height:1.4}
.signing-guide li{padding:4px 0;overflow-wrap:anywhere}
.signing-guide ul{padding-left:1.4rem}
.signing-guide pre{font-size:1rem;line-height:1.8;max-height:none;background:#07060c;color:#eef6ff;border:1px solid rgba(199,125,255,.4);border-left:3px solid var(--purple);border-radius:8px;padding:18px;white-space:pre-wrap;overflow-wrap:anywhere}
.signing-guide code{font-size:1rem;color:#eef6ff;overflow-wrap:anywhere}
.signing-guide pre code{font:inherit;color:inherit}
.signing-guide .step-nav a{font-size:.875rem;line-height:1.6}
.signing-guide .boundary{font-size:1rem}
.signing-guide .guide-return{border-left:3px solid var(--cyan);padding:8px 0 8px 18px}
/* Echo's core, crossed rings and boundary shell, rendered locally without WebGL.
   Motion is a short response to a result, never a continuous background loop. */
.echo-twin{--twin-color:#22d3ee;margin:10px 0 26px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#08070f;isolation:isolate}
.echo-twin[data-state=refused]{--twin-color:#f2668b;border-color:rgba(242,102,139,.45)}
.twin-stage{position:relative;color:var(--twin-color);background:radial-gradient(ellipse at 50% 55%,rgba(255,43,214,.1),transparent 60%),#06060d;overflow:hidden}
.twin-stage::after{content:'';pointer-events:none;position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 4px)}
.twin-stage svg{display:block;width:100%;height:clamp(240px,35vw,340px)}
.twin-brand,.twin-local{position:absolute;top:18px;font:500 .62rem/1.5 var(--font-mono);letter-spacing:.14em;z-index:1}
.twin-brand{left:20px;color:var(--foreground)}.twin-local{right:20px;color:var(--dim);font-size:.55rem}
.twin-stars{fill:currentColor}.twin-shell{fill:none;stroke:currentColor;stroke-width:1;opacity:.28}
.twin-ring{fill:none;stroke:currentColor;stroke-width:3;filter:drop-shadow(0 0 5px currentColor)}
.twin-ring-back{opacity:.65;stroke-width:2}.twin-ring-front{stroke-width:4}
.twin-core{fill:url(#twin-light);filter:drop-shadow(0 0 18px currentColor)}
.twin-satellite{filter:drop-shadow(0 0 7px currentColor)}.twin-gold{color:var(--gold);fill:var(--gold)}.twin-cyan{color:var(--cyan);fill:var(--cyan)}.twin-purple{color:var(--purple);fill:var(--purple)}
.echo-twin figcaption{padding:22px 24px;background:linear-gradient(115deg,rgba(255,43,214,.035),transparent);border-top:1px solid var(--line)}
.twin-scope{margin:0 0 10px;font:.65rem/1.5 var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--purple)}
.twin-verdict{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0;font-size:1.25rem;line-height:1.4}
.twin-dot{width:9px;height:9px;flex:none;background:var(--twin-color);border-radius:50%;box-shadow:0 0 12px var(--twin-color)}
.twin-verdict strong{color:var(--twin-color)}.twin-pending{font:.65rem/1.5 var(--font-mono);color:var(--gold);border:1px solid rgba(244,201,93,.4);border-radius:5px;padding:4px 8px}
.twin-detail{font-size:.92rem;line-height:1.6;color:var(--foreground);margin:12px 0 0;max-width:76ch}.twin-caption{font-size:.8rem;line-height:1.6;margin:14px 0 0;max-width:82ch}
.echo-twin[data-state=request] .twin-orbit,.echo-twin[data-state=signature] .twin-orbit,.echo-twin[data-state=matched] .twin-orbit{transform-origin:400px 180px;animation:twin-acknowledge 1.8s ease-out both}
@keyframes twin-acknowledge{from{transform:rotate(-9deg)}to{transform:rotate(0deg)}}
@media(max-width:780px){.echo-twin figcaption{padding:20px}.twin-stage svg{height:240px}.twin-stage svg{width:160%;max-width:none;margin-left:-30%}.twin-local{font-size:.5rem;right:14px}.twin-brand{left:14px}.twin-verdict{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){.echo-twin .twin-orbit{animation:none!important}}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;top:12px;left:12px;z-index:10;background:var(--background);padding:12px;border:1px solid var(--cyan);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
@media(max-width:1100px){.brand>.wordmark{display:none}.brand img{width:96px;height:96px}.desktop-links a{padding:12px}.site-header-inner{gap:16px}}
@media(max-width:780px){.site-header-inner{padding:14px 16px;gap:16px}.brand img{width:80px;height:80px}.desktop-links{display:none}.mobile-menu{display:block;position:static}.mobile-menu summary{list-style:none;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid var(--line);cursor:pointer}.mobile-menu summary::-webkit-details-marker{display:none}.menu-lines{width:20px;height:8px;border-top:1px solid var(--foreground);border-bottom:1px solid var(--foreground)}.menu-links{position:absolute;right:0;top:calc(100% + 8px);width:240px;max-width:calc(100vw - 32px);padding:8px;background:var(--background);border:1px solid var(--line);box-shadow:0 10px 32px #000}.menu-links a{margin:4px 0}.theme-label{padding:12px 10px;min-height:46px}.columns{grid-template-columns:minmax(0,1fr);gap:0}.masthead{padding-top:32px}.context-nav{font-size:.6rem;letter-spacing:.08em}.boundary{margin-top:20px}section{padding:20px}.step-nav{gap:8px}.step-nav a{padding:10px;font-size:.7rem}.toolbar{gap:12px}.toolbar a{padding:8px 0}.wordmark{font-size:18px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* The original Nearby page supplies navigation, introduction and resources. */
html.embedded{background:transparent}.embedded body{min-height:0;background:none}.embedded main{max-width:none;margin:0;padding:0 0 12px}
.embedded .site-header,.embedded .context-nav,.embedded .masthead,.embedded .skip-link,.embedded .toolbar,.embedded .handoff-guide,.embedded footer{display:none}
.embedded .boundary{margin:0 0 20px}.embedded .echo-twin{margin-top:0}
