@font-face{font-family:Orbitron;src:url('/fonts/orbitron-regular.ttf') format('truetype');font-display:swap;font-weight:400}
@font-face{font-family:Orbitron;src:url('/fonts/orbitron-semibold.ttf') format('truetype');font-display:swap;font-weight:600}
:root{color-scheme:dark;--bg:#05070b;--panel:rgba(10,15,23,.82);--ink:#f2f6fa;--muted:#8995a5;--line:rgba(181,207,234,.16);--ice:#cbe8ff;--blue:#83b8e6;--success:#a9e7d4;--danger:#ff7b88;--danger-soft:#ffb0b7}
*{box-sizing:border-box}
html{min-height:100%;background:var(--bg)}
body{min-height:100svh;margin:0;overflow-x:hidden;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif;transition:background .7s ease}
button,input{font:inherit}
button,a{color:inherit}
a{text-decoration:none}
[hidden]{display:none!important}
.space{position:fixed;inset:0;background:linear-gradient(90deg,rgba(5,7,11,.99),rgba(5,7,11,.76) 48%,rgba(5,7,11,.6)),radial-gradient(circle at 76% 42%,rgba(104,159,210,.17),transparent 30%),url('/assets/home-space-hq.jpg') center/cover;filter:saturate(.45) contrast(1.08);transform:scale(1.03);transition:filter .9s ease,transform 1.5s cubic-bezier(.16,1,.3,1)}
.space::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 74% 38%,transparent 0 15%,rgba(5,7,11,.24) 52%,rgba(5,7,11,.82) 100%)}
.noise{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.scan-flare{position:fixed;inset:0;z-index:6;pointer-events:none;opacity:0;background:linear-gradient(180deg,transparent 0 45%,rgba(180,223,255,.13) 50%,transparent 55%);transform:translateY(-70%)}
.verify-nav{position:relative;z-index:10;height:84px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(5,7,11,.65),transparent)}
.brand{display:flex;align-items:center;gap:12px;font:600 14px/1 Orbitron,monospace;letter-spacing:.2em}
.brand-mark{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:square}
.protocol{display:flex;align-items:center;gap:10px;color:#7f8d9d;font:10px/1 Orbitron,monospace;letter-spacing:.16em}
.protocol i,.node-status i{width:6px;height:6px;border-radius:50%;background:#7795ad;box-shadow:0 0 12px rgba(131,184,230,.55)}
main{position:relative;z-index:5;min-height:calc(100svh - 144px);padding:clamp(55px,8vh,100px) clamp(24px,7vw,108px) 70px;display:grid;grid-template-columns:minmax(0,.84fr) minmax(520px,1fr);gap:clamp(45px,8vw,130px);align-items:center}
.verify-intro{max-width:660px}
.eyebrow{margin:0 0 26px;color:#91a2b5;font:500 10px/1.5 Orbitron,monospace;letter-spacing:.23em}
h1{margin:0;font-size:clamp(52px,6vw,96px);line-height:.98;letter-spacing:-.07em;font-weight:600}
h1 em{display:inline-block;font-style:normal;color:var(--ice);text-shadow:0 0 42px rgba(131,184,230,.22)}
.intro-copy{max-width:560px;margin:32px 0 0;color:#9aa5b2;font-size:16px;line-height:1.9}
.trust-notes{margin-top:60px;display:flex;flex-wrap:wrap;gap:9px}
.trust-notes span{padding:10px 13px;border:1px solid var(--line);border-radius:999px;background:rgba(8,12,18,.45);color:#8492a2;font-size:11px;backdrop-filter:blur(12px)}
.trust-notes i{margin-right:7px;color:#d7e6f3;font:9px Orbitron,monospace;font-style:normal}
.verifier{position:relative;width:100%;max-width:680px;justify-self:end;padding:25px clamp(22px,3vw,42px) 28px;border:1px solid rgba(190,215,240,.2);border-radius:30px;background:linear-gradient(145deg,rgba(15,22,32,.9),rgba(7,11,17,.82));box-shadow:0 45px 100px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.035),0 0 0 1px rgba(15,24,35,.8);backdrop-filter:blur(22px);overflow:hidden;transition:border-color .5s ease,box-shadow .7s ease,transform .7s cubic-bezier(.16,1,.3,1)}
.verifier::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 35%,rgba(199,229,255,.045) 47%,transparent 58%);transform:translateX(-100%)}
.panel-topline{position:relative;z-index:2;display:flex;justify-content:space-between;color:#667487;font:9px/1 Orbitron,monospace;letter-spacing:.16em}
.node-status{display:flex;align-items:center;gap:8px}.node-status b{font-weight:400;color:#94a4b5}
.signal-core{position:relative;width:min(270px,66vw);aspect-ratio:1;margin:18px auto 6px;display:grid;place-items:center}
.core-grid{position:absolute;inset:13%;border-radius:50%;opacity:.34;background-image:linear-gradient(rgba(146,190,227,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(146,190,227,.14) 1px,transparent 1px);background-size:18px 18px;mask-image:radial-gradient(circle,#000 42%,transparent 72%)}
.orbit{position:absolute;border:1px solid rgba(151,192,229,.24);border-radius:50%;transition:border-color .45s ease,box-shadow .45s ease}.orbit-one{inset:4%;transform:rotate(-24deg) scaleY(.41)}.orbit-two{inset:16%;transform:rotate(36deg) scaleY(.58)}.orbit-three{inset:29%;border-style:dashed;opacity:.6}
.orbit-one i{position:absolute;top:50%;left:-3px;width:6px;height:6px;border-radius:50%;background:#cce9ff;box-shadow:0 0 19px 6px rgba(130,188,234,.54);animation:orbitTravel 4.8s linear infinite}
.crosshair{position:absolute;background:linear-gradient(90deg,transparent,rgba(145,186,222,.2),transparent)}.crosshair-x{width:100%;height:1px}.crosshair-y{height:100%;width:1px;transform:rotate(90deg)}
.core-emblem{position:relative;z-index:3;width:98px;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(191,220,244,.2);border-radius:50%;background:radial-gradient(circle,rgba(124,174,216,.13),rgba(7,12,19,.86) 68%);box-shadow:0 0 45px rgba(100,157,205,.11)}
.core-emblem svg{width:55%;fill:none;stroke:#d6e9f7;stroke-width:2.3;stroke-linecap:square}.emblem-check,.emblem-error{opacity:0;stroke-dasharray:70;stroke-dashoffset:70}
.particle-field{position:absolute;inset:0;pointer-events:none}.particle{position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:var(--success);box-shadow:0 0 11px currentColor;opacity:0}
.state-copy{text-align:center}.state-kicker{margin:0 0 8px;color:#8090a3;font:9px/1 Orbitron,monospace;letter-spacing:.2em}.state-copy h2{margin:0;font-size:25px;letter-spacing:-.025em}.state-copy>p:last-child{max-width:500px;margin:12px auto 0;color:#7f8b9a;font-size:12px;line-height:1.7}
.verify-form{margin-top:24px}.verify-form label{display:block;margin:0 0 9px;color:#8998a8;font-size:11px}.code-field{height:62px;padding:0 14px;display:flex;align-items:center;gap:12px;border:1px solid rgba(183,209,234,.19);border-radius:16px;background:rgba(3,6,10,.58);transition:.25s}.code-field:focus-within{border-color:rgba(175,218,249,.53);box-shadow:0 0 0 4px rgba(105,164,211,.08)}
.field-prefix{padding-right:12px;border-right:1px solid var(--line);color:#718397;font:9px Orbitron,monospace;letter-spacing:.12em}.code-field input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#e7f3fc;font:500 clamp(12px,1.18vw,15px)/1 Orbitron,monospace;letter-spacing:.055em;text-transform:uppercase}.code-field input::placeholder{color:#485461}.field-count{color:#536171;font:8px Orbitron,monospace;white-space:nowrap}.code-hint{margin:8px 3px 0;color:#596778;font-size:10px}
.verify-button{position:relative;width:100%;height:56px;margin-top:18px;border:0;border-radius:16px;overflow:hidden;background:#edf5fb;color:#0b1118;cursor:pointer;font-size:13px;font-weight:600;transition:transform .25s,box-shadow .25s,background .35s}.verify-button:hover{transform:translateY(-2px);box-shadow:0 13px 35px rgba(181,220,249,.15)}.verify-button:disabled{cursor:wait}.verify-button i{position:absolute;inset:0;background:linear-gradient(100deg,transparent 15%,rgba(124,177,218,.3),transparent 72%);transform:translateX(-100%)}.button-scanning{display:none}
.scan-log{max-height:0;margin-top:0;overflow:hidden;opacity:0;transition:max-height .5s ease,opacity .35s ease,margin .4s ease}.scan-log div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;padding:10px 2px;border-bottom:1px solid rgba(181,207,234,.09);color:#738194;font-size:10px}.scan-log i{width:5px;height:5px;border-radius:50%;background:#4d5b69}.scan-log b{font:8px Orbitron,monospace;font-weight:400;color:#526071}.scan-log div.active{color:#b8cde0}.scan-log div.active i{background:var(--blue);box-shadow:0 0 10px var(--blue)}.scan-log div.active b{color:#a9cceb}.scan-log div.done i{background:var(--success);box-shadow:0 0 10px var(--success)}.scan-log div.done b{color:var(--success)}.scan-log div.fail i{background:var(--danger);box-shadow:0 0 10px var(--danger)}.scan-log div.fail b{color:var(--danger-soft)}
.verification-result{margin-top:22px;padding:19px;border:1px solid rgba(168,225,208,.18);border-radius:18px;background:rgba(11,29,28,.34)}.result-code span{display:block;color:#79918e;font:8px Orbitron,monospace;letter-spacing:.16em}.result-code strong{display:block;margin-top:8px;overflow-wrap:anywhere;color:#d9fff3;font:600 clamp(12px,1.35vw,16px)/1.4 Orbitron,monospace;letter-spacing:.045em}.verification-result dl{margin:18px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(167,225,208,.1)}.verification-result dl div{padding:13px;background:#091411}.verification-result dt{color:#667d79;font-size:9px}.verification-result dd{margin:6px 0 0;color:#c4ded7;font-size:12px}.share-link{margin-top:14px;padding:0;border:0;background:none;color:#9fcfc1;font-size:10px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.privacy-note{display:flex;align-items:flex-start;gap:8px;margin:18px 2px 0;color:#586676;font-size:9px;line-height:1.55}.privacy-note i{flex:0 0 5px;width:5px;height:5px;margin-top:4px;border-radius:50%;background:#65788b}
footer{position:relative;z-index:5;height:60px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);color:#4f5d6d;font:8px Orbitron,monospace;letter-spacing:.16em}
body[data-state="scanning"] .scan-flare{animation:scanPage 1.25s linear infinite}
body[data-state="scanning"] .space{filter:saturate(.65) contrast(1.16);transform:scale(1.055)}
body[data-state="scanning"] .verifier::before{animation:panelSweep 1.1s linear infinite}
body[data-state="scanning"] .orbit-one{animation:spinOne 2.1s linear infinite}
body[data-state="scanning"] .orbit-two{animation:spinTwo 2.8s linear infinite reverse}
body[data-state="scanning"] .orbit-three{animation:spinThree 3s linear infinite}
body[data-state="scanning"] .core-emblem{animation:corePulse 1s ease-in-out infinite}
body[data-state="scanning"] .button-default{display:none}body[data-state="scanning"] .button-scanning{display:inline}body[data-state="scanning"] .verify-button i{animation:buttonScan 1s linear infinite}
body[data-state="scanning"] .scan-log{max-height:150px;margin-top:17px;opacity:1}
body[data-state="success"] .verifier{border-color:rgba(169,231,212,.42);box-shadow:0 45px 110px rgba(0,0,0,.55),0 0 75px rgba(107,211,181,.1),inset 0 1px rgba(255,255,255,.05)}
body[data-state="success"] .node-status i{background:var(--success);box-shadow:0 0 14px var(--success)}
body[data-state="success"] .orbit{border-color:rgba(169,231,212,.35)}
body[data-state="success"] .emblem-x{opacity:0}body[data-state="success"] .emblem-check{opacity:1;stroke:var(--success);animation:drawMark .8s .15s ease forwards}
body[data-state="success"] .particle{animation:particleBurst 1.25s var(--delay) cubic-bezier(.12,.8,.2,1) forwards}
body[data-state="error"] .verifier{border-color:rgba(255,123,136,.42);box-shadow:0 45px 110px rgba(0,0,0,.55),0 0 75px rgba(255,77,94,.08);animation:errorJolt .46s ease}
body[data-state="error"] .space{filter:saturate(.25) contrast(1.3) hue-rotate(-12deg)}
body[data-state="error"] .node-status i{background:var(--danger);box-shadow:0 0 14px var(--danger)}
body[data-state="error"] .orbit{border-color:rgba(255,123,136,.3)}
body[data-state="error"] .emblem-x{opacity:0}body[data-state="error"] .emblem-error{opacity:1;stroke:var(--danger-soft);animation:drawMark .55s .1s ease forwards}
body[data-state="error"] .code-field{border-color:rgba(255,123,136,.42);box-shadow:0 0 0 4px rgba(255,85,102,.06)}
@keyframes orbitTravel{0%{transform:translate(0,-1px);opacity:0}15%{opacity:1}50%{transform:translate(264px,0)}85%{opacity:1}100%{transform:translate(0,-1px);opacity:0}}
@keyframes scanPage{to{transform:translateY(170%)}}
@keyframes panelSweep{to{transform:translateX(100%)}}
@keyframes spinOne{to{transform:rotate(336deg) scaleY(.41)}}
@keyframes spinTwo{to{transform:rotate(396deg) scaleY(.58)}}
@keyframes spinThree{to{transform:rotate(360deg)}}
@keyframes corePulse{50%{transform:scale(1.07);box-shadow:0 0 55px rgba(132,192,237,.2)}}
@keyframes buttonScan{to{transform:translateX(100%)}}
@keyframes drawMark{to{stroke-dashoffset:0}}
@keyframes particleBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}20%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(0)}}
@keyframes errorJolt{0%,100%{transform:none}20%{transform:translateX(-8px)}45%{transform:translateX(6px)}70%{transform:translateX(-3px)}}
@media(max-width:980px){main{grid-template-columns:1fr;gap:54px;padding-top:55px}.verify-intro{max-width:720px}.verifier{justify-self:center}.trust-notes{margin-top:36px}}
@media(max-width:620px){.verify-nav{height:68px;padding:0 20px}.protocol span{display:none}main{display:block;width:100%;min-width:0;padding:42px 16px 54px;overflow:hidden}.verify-intro{width:100%;min-width:0;padding:0 7px}h1{font-size:49px}.intro-copy{font-size:14px;margin-top:24px}.trust-notes{gap:6px}.trust-notes span{font-size:9px}.verifier{width:100%;max-width:100%;min-width:0;margin-top:54px;padding:21px 17px 24px;border-radius:25px}.panel-topline{gap:10px;font-size:7px}.signal-core{width:230px;margin-top:11px}.state-copy h2{font-size:22px}.code-field{height:58px;padding:0 11px;gap:8px}.field-prefix{display:none}.code-field input{font-size:11px;letter-spacing:.025em}.field-count{font-size:7px}.verification-result dl{grid-template-columns:1fr}.result-code strong{font-size:10px}footer{height:auto;padding:24px;align-items:flex-start;gap:13px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
