@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#060914;--panel:#0c1424;--line:rgba(163,194,250,.16);--muted:#a4b2ca;--text:#f3f6ff;--blue:#80b4ff;--frame:1184px;--nav-height:72px;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:500}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + 24px)}
body{margin:0;color:var(--text);background:radial-gradient(ellipse 790px 590px at 80% 14rem,#102448 0%,transparent 77%),radial-gradient(ellipse 700px 600px at 0% 67%,#0a1630 0%,transparent 72%),var(--bg);min-width:280px}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit;color:inherit}
button,select{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid #a6d1ff;outline-offset:4px}
[hidden]{display:none!important}
h1,h2,h3,p{margin:0}
::selection{color:white;background:#315db2}
.frame{width:min(calc(100% - 96px),var(--frame));margin-inline:auto}
.glass{background:linear-gradient(145deg,rgba(119,164,241,.1),rgba(30,50,92,.12) 58%,rgba(89,133,214,.08));border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(209,226,255,.05),0 12px 38px rgba(0,0,0,.12);backdrop-filter:blur(18px)}
.skip{position:fixed;top:8px;left:8px;z-index:20;background:#124688;padding:10px 14px;border-radius:8px;transform:translateY(-150%)}
.skip:focus{transform:none}
.header{position:sticky;top:0;z-index:5;background:#070b16cf;backdrop-filter:blur(22px);border-bottom:1px solid #a0c4ff1a}
.header-inner{height:var(--nav-height);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}
.brand{display:inline-flex;align-items:center;gap:10px;width:max-content;font-size:22px;font-weight:800;letter-spacing:-.05em}
.brand-mark{display:grid;place-items:center;width:37px;height:37px;color:#a0c8ff;border:1px solid #85b9ff55;border-radius:12px;background:radial-gradient(circle at 22% 18%,#426baf99,#142a5450 80%);box-shadow:inset 0 1px 1px #a0c5ff45,0 0 24px #2d7aff22}
.icon{width:20px;height:20px;display:block;flex:none}
.brand-mark .icon{width:24px;height:24px}
.nav{display:flex;gap:5px;align-items:center;padding:4px;border-radius:14px;background:#0c1424ad;border:1px solid #92b5f118}
.nav a{padding:8px 15px;border-radius:10px;color:#9facbf;font-size:13px;font-weight:700;transition:background .2s,color .2s}
.nav a:hover,.nav a.current{color:#edf4ff;background:#a0bfff17}
.nav-search{display:flex;justify-self:end;align-items:center;gap:9px;padding:8px 9px 8px 12px;border-radius:11px;color:#bdcbe4;font-size:13px;font-weight:700;transition:border-color .25s}
.nav-search:hover,.search:focus-within{border-color:#7fb3ff94}
.nav-search .icon,.search .icon{width:16px;height:16px;color:#92b9f3}
kbd{font:600 12px system-ui;color:#aabfe0;border:1px solid #a6c3ff25;border-radius:5px;background:#abc6ff0b;display:grid;place-items:center;min-width:22px;height:22px}
.hero{min-height:534px;position:relative;display:flex;align-items:center;isolation:isolate}
.hero-content{position:relative;z-index:1;width:63%;padding:64px 0 70px}
.pill{display:inline-flex;align-items:center;gap:9px;font-weight:800;font-size:10px;letter-spacing:.15em}
.eyebrow{border:1px solid #76aaff42;background:#1633598f;border-radius:999px;padding:9px 13px;color:#bbd7ff;animation:rise .62s both}
.signal,.section-kicker span{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7caeff;box-shadow:0 0 12px #5d9eff}
.signal{animation:signal 3.8s ease-in-out infinite}
.hero h1{font-size:clamp(64px,7.3vw,108px);font-weight:800;letter-spacing:-.09em;line-height:.94;margin:23px 0 25px;animation:rise .75s .08s both}
.hero h1 em{font-style:normal;color:#83b7ff;background:linear-gradient(110deg,#d4e7ff 0%,#8cbdff 33%,#488bf9 82%);background-clip:text;-webkit-text-fill-color:transparent;padding-right:.055em}
.hero p{max-width:455px;color:#abbad3;line-height:1.7;font-size:17px;animation:rise .72s .16s both}
.hero-actions{display:flex;gap:12px;margin-top:29px;flex-wrap:wrap;animation:rise .72s .24s both}
.button{min-height:48px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 16px;font-size:13px;font-weight:800;transition:transform .22s,background .22s,border-color .22s,box-shadow .22s;white-space:nowrap}
.button:hover{transform:translateY(-3px)}
.button:active{transform:scale(.98)}
.button .icon{width:17px;height:17px}
.primary{background:linear-gradient(168deg,#80b6ff,#5c99f6);color:#071227;border:1px solid #a7d0ff91;box-shadow:inset 0 1px 0 #ffffff52,0 8px 27px #367ff959}
.primary:hover{background:#9accff;box-shadow:0 10px 32px #367ff978}
.secondary{color:#dbe9ff}
.secondary:hover{border-color:#86b7ff80;background:#4775b83a}
.secondary .icon{color:#8db7ff}
.hero-art{position:absolute;inset:0 -32px 0 41%;pointer-events:none;display:grid;place-items:center;overflow:visible;z-index:-1}
.hero-art img,.art-glow,.art-orbit{grid-area:1/1}
.hero-art img{width:min(100%,604px);height:auto;display:block;mix-blend-mode:screen;mask-image:radial-gradient(ellipse at center,#000 49%,#000d 61%,transparent 75%);transform:translate3d(var(--mx,0px),var(--my,0px),0);animation:art-enter 1.5s ease-out both;transition:transform .52s cubic-bezier(.16,1,.3,1)}
.art-glow{width:92%;height:85%;background:radial-gradient(ellipse at 57% 54%,#234f9d49,transparent 66%);animation:breathe 6.8s ease-in-out infinite}
.art-orbit{width:70%;aspect-ratio:1;border-radius:50%;transform:rotate(-16deg) scaleY(.46);opacity:.76;box-shadow:0 0 32px #4a93ff25,inset 0 0 25px #81b4ff14;border:1px solid #7bb6ff28}
.art-orbit i{position:absolute;inset:-2px;border-radius:50%;animation:spin 12s linear infinite}
.art-orbit i::after{content:"";position:absolute;top:50%;right:-3px;width:7px;height:7px;border-radius:50%;background:#d0e6ff;box-shadow:0 0 13px 4px #478fff}
.stats{position:relative;display:grid;grid-template-columns:repeat(3,1fr);border-radius:21px;padding:20px 0;margin-top:1px;animation:rise .7s .27s both}
.stat{display:flex;align-items:center;justify-content:center;gap:15px;min-width:0}
.stat+.stat{border-left:1px solid #a9c8ff21}
.stat-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#2b518773,#13284494);border:1px solid #83b3ff38;color:#9ac4ff;flex:none;box-shadow:inset 0 1px 0 #c3ddff20}
.stat strong{display:block;font-size:26px;line-height:1.12;letter-spacing:-.04em;font-weight:800}
.stat div>span{font-size:12px;color:var(--muted)}
.section{margin-top:82px}
.section-arrival{animation:card-in .46s ease-out both}
.section-kicker{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:800;letter-spacing:.17em;color:#8bb9ff;margin-bottom:13px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}
.section-heading h2{font-size:clamp(33px,4.3vw,53px);letter-spacing:-.073em;line-height:1.08;font-weight:800}
.section-heading p,.navigation-block p{max-width:660px;font-size:15px;line-height:1.7;color:var(--muted);margin-top:10px}
.search{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;width:min(100%,332px);flex:none;transition:border-color .22s}
.search input{width:100%;min-width:0;background:none;border:0;font-size:13px;color:var(--text);outline:none}
.search input::placeholder{color:#a3b2cb;opacity:1}
.search input:focus-visible{outline:none}
.filter-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.filter,.guide-select{border:1px solid var(--line);background:#111a2d91;color:#bac9e1;border-radius:10px;padding:8px 13px;min-height:39px;font-size:12px;font-weight:800;transition:all .2s}
.filter:hover,.guide-select:hover{background:#29477c60;border-color:#699bde7b;color:#f3f7ff}
.filter[aria-pressed=true]{background:#254b8496;border-color:#6aabff72;color:#c9e1ff;box-shadow:inset 0 1px 0 #bbd7ff19}
.guide-select{margin-left:auto;max-width:100%}
.guide-select:has(option:checked:not([value=""])){border-color:#6aabff72;color:#c9e1ff;background:#254b8496}
.guide-select option{background:#101b2e}
.results-line{display:flex;justify-content:space-between;align-items:center;margin:17px 0 11px;min-height:23px;color:#9baac2;font-size:12px;font-weight:700}
.text-button{display:inline-flex;align-items:center;gap:6px;border:0;background:none;color:#9dc7ff;font-size:13px;font-weight:800;padding:0;transition:color .2s}
.text-button:hover{color:#e4f1ff}
.text-button .icon{width:15px;height:15px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.more-row:has(button:not([hidden])){display:flex;justify-content:center;margin-top:17px}
.card{text-align:left;display:flex;flex-direction:column;gap:0;min-width:0;position:relative;overflow:hidden;border-radius:19px;padding:18px 19px;min-height:203px;isolation:isolate;transition:transform .28s,border-color .28s,box-shadow .28s;animation:card-in .44s both;animation-delay:var(--delay,0ms)}
.card::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at top right,var(--tint,#609bff) 0%,transparent 57%);opacity:.10;transition:opacity .28s}
.card:hover{transform:translateY(-4px);border-color:#84b7f783;box-shadow:0 16px 35px #02040a91,inset 0 1px 0 #b1d2ff38}
.card:hover::before{opacity:.21}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:13px}
.card-icon{display:grid;place-items:center;width:37px;height:37px;border:1px solid color-mix(in srgb,var(--tint) 38%,transparent);background:color-mix(in srgb,var(--tint) 13%,transparent);color:var(--tint);border-radius:10px;flex:none}
.card-icon .icon{width:19px;height:19px}
.kind{border-radius:7px;padding:4px 7px;background:color-mix(in srgb,var(--tint) 10%,transparent);color:var(--tint);font-size:10px;font-weight:800;letter-spacing:.025em}
.card-title{font-size:23px;line-height:1.15;font-weight:800;letter-spacing:-.05em;margin-bottom:7px}
.card-description{font-size:13px;line-height:1.53;color:#aab9d2;margin-bottom:14px}
.card-bottom{margin-top:auto;padding-top:11px;border-top:1px solid #a1c6ff1c;display:flex;align-items:center;justify-content:space-between;color:#b7c8e2;font-size:11px;font-weight:700;gap:9px}
.card-bottom .icon{width:16px;height:16px;color:#9ac5ff;transition:transform .25s}
.card:hover .card-bottom .icon{transform:translateX(4px)}
.empty{text-align:center;border-radius:18px;padding:38px 20px}
.empty .stat-icon{margin:0 auto 14px}
.empty p{color:var(--muted);margin:6px 0 15px;font-size:14px}
.guide-layout{display:grid;grid-template-columns:minmax(210px,30%) minmax(0,1fr);min-height:440px;overflow:hidden;border-radius:23px}
.guide-tabs{border-right:1px solid var(--line);padding:15px;display:flex;flex-direction:column;gap:5px;background:#080e1a60}
.guide-tabs button{display:flex;text-align:left;align-items:center;gap:10px;width:100%;background:none;border:1px solid transparent;border-radius:11px;color:#aebed8;padding:10px;font-size:13px;font-weight:800;line-height:1.25;min-height:44px}
.guide-tabs button .icon{width:16px;height:16px;color:#90b9fa}
.guide-tabs button:hover,.guide-tabs button[aria-selected=true]{background:#2b4d8966;border-color:#71a9ff4d;color:#f0f6ff}
.guide-panel{padding:30px;display:grid;align-content:center;min-width:0}
.guide-enter{display:grid;grid-template-columns:1fr minmax(135px,34%);align-items:center;gap:20px;animation:card-in .35s both}
.guide-panel h3,.navigation-block h3{font-size:clamp(24px,3vw,34px);letter-spacing:-.06em;line-height:1.15}
.guide-panel p{font-size:14px;line-height:1.68;color:var(--muted);margin:10px 0 14px}
.guide-panel .example{padding:10px 12px;border-radius:9px;background:#73a4f216;font-size:12px;color:#c5d8f6;line-height:1.55;margin-bottom:13px}
.guide-links{display:flex;flex-wrap:wrap;gap:10px 17px}
.demo{height:auto;aspect-ratio:1;min-width:0;position:relative;display:grid;place-items:center;background:radial-gradient(circle,#152d566e,#080d19 72%);border:1px solid #7faeff36;border-radius:50%;overflow:hidden;color:#9abfff}
.demo::before,.demo::after{content:"";position:absolute;width:68%;aspect-ratio:1;border:1px solid #76aaff3c;border-radius:50%}
.demo::after{width:41%}
.demo .icon{width:26px;height:26px;z-index:1}
.demo i{position:absolute;inset:1px;border-radius:50%;background:conic-gradient(transparent 0deg 300deg,#609bff66 356deg,#86baffbb 360deg);animation:spin 5s linear infinite}
.demo[data-mode=passive] i,.demo[data-mode=ir] i,.demo[data-mode=thermal] i,.demo[data-mode=tv] i,.demo[data-mode=correlation] i{inset:28%;background:none;border:2px solid #75acff87;animation:pulse 2.5s ease-out infinite}
.demo[data-mode=laser] i,.demo[data-mode=semi] i{inset:0;border-radius:0;background:linear-gradient(135deg,transparent 49.4%,#a7d3ffe0 50%,transparent 50.6%);animation:breathe 2.5s ease-in-out infinite}
.navigation-block{margin-top:29px;display:grid;grid-template-columns:.82fr 1.4fr;gap:28px}
.nav-methods,.source-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.method,.source-card{border-radius:13px;padding:14px}
.method h4{margin:0;font-size:14px}
.method p{margin-top:5px;font-size:12px;line-height:1.55}
.source-card{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:74px;transition:background .2s,border-color .2s}
.source-card:hover{background:#1a345ac9;border-color:#8dbcff65}
.source-card strong{display:block;font-size:14px}
.source-card span:not([data-icon]){display:block;font-size:12px;color:var(--muted);margin-top:3px}
.source-card .icon{width:17px;height:17px;color:#a3c8ff}
.notice{margin:20px 0 0;display:flex;align-items:center;gap:13px;padding:15px 18px;border-radius:16px}
.notice div{flex:1}
.notice strong{font-size:14px}
.notice p{font-size:12px;color:var(--muted);margin-top:3px}
.footer{margin-top:62px;border-top:1px solid var(--line);background:#070b13}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:87px;color:#9baac4;font-size:12px}
.footer .brand{color:var(--text);font-size:19px}
.footer .brand-mark{width:31px;height:31px;border-radius:9px}
.footer .brand-mark .icon{width:20px;height:20px}
dialog{background:radial-gradient(ellipse at 100% 0%,#234b81 0%,#101d33 44%,#0c1422 87%);color:var(--text);border:1px solid #8ebbff55;border-radius:22px;box-shadow:0 40px 140px #000b;width:min(578px,calc(100% - 26px));max-height:calc(100dvh - 30px);padding:0}
dialog::backdrop{background:#020610bd;backdrop-filter:blur(9px)}
dialog[open]{animation:dialog-in .25s ease-out both}
body:has(dialog[open]){overflow:hidden}
.dialog-content{padding:26px}
.dialog-top{display:flex;justify-content:space-between;align-items:start;gap:18px;margin-bottom:12px}
.dialog-top .kind{display:inline-block;margin-bottom:8px}
.dialog-top h2{font-size:clamp(26px,6vw,40px);letter-spacing:-.06em;line-height:1.08}
.close{padding:8px;border-radius:10px;color:#c5ddff}
.dialog-lead{font-size:14px;color:#c1d0e7;line-height:1.7}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.fact{padding:10px 12px;border-radius:9px;background:#a8c6ff0f;border:1px solid #abc9ff1f}
.fact dt{font-size:11px;color:#a3b5d1;margin-bottom:3px}
.fact dd{font-size:13px;margin:0;font-weight:800}
.detail-note{border-left:2px solid #75abff94;padding-left:11px;font-size:13px;line-height:1.65;color:#bdcde7}
.detail-sources{display:grid;gap:10px;margin-top:17px}
.detail-sources h3{font-size:12px;color:#c9d9f1}
.noscript{background:#14223b;padding:10px;text-align:center}
@keyframes rise{from{opacity:0;translate:0 17px}to{opacity:1;translate:0 0}}
@keyframes card-in{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}
@keyframes art-enter{from{opacity:0;scale:.96}to{opacity:1;scale:1}}
@keyframes dialog-in{from{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}
@keyframes spin{to{rotate:360deg}}
@keyframes breathe{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes signal{0%,100%{box-shadow:0 0 8px #5d9eff}50%{box-shadow:0 0 15px 3px #5d9eff98}}
@keyframes pulse{from{scale:.48;opacity:.95}to{scale:2.6;opacity:0}}
@media(max-width:1000px){.frame{width:calc(100% - 58px)}.hero{min-height:489px}.hero h1{font-size:clamp(61px,8.6vw,90px)}.hero-art{right:-16px;left:39%}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-panel{padding:24px}}
@media(max-width:700px){:root{--nav-height:59px}.frame{width:calc(100% - 34px)}.brand{font-size:18px;gap:7px}.brand-mark{width:31px;height:31px;border-radius:10px}.brand-mark .icon{width:20px;height:20px}.header-inner{gap:5px}.nav{padding:3px;gap:1px}.nav a{padding:7px 8px;font-size:11px}.nav-search{padding:8px}.nav-search-text,.nav-search kbd{display:none}.hero{min-height:0;display:block}.hero-content{width:100%;padding:0 0 26px}.hero-art{position:relative;inset:auto;margin:-17px auto -55px;width:min(94%,380px);height:auto;aspect-ratio:1}.hero-art img{width:100%}.hero h1{font-size:clamp(52px,12vw,78px);margin:15px 0 17px}.hero p{font-size:15px;max-width:420px}.hero-actions{margin-top:20px;gap:8px}.button{min-height:44px;padding-inline:12px}.stats{padding:12px 0;border-radius:15px}.stat{gap:5px;text-align:center;flex-direction:column;padding:0 4px}.stat-icon{width:31px;height:31px;border-radius:8px}.stat-icon .icon{width:16px;height:16px}.stat strong{font-size:20px}.stat div>span{font-size:9px}.section{margin-top:55px}.section-heading{display:block;margin-bottom:17px}.section-heading p{font-size:14px}.search{width:100%;margin-top:14px}.filter-row{gap:5px}.filter,.guide-select{padding:7px 9px;font-size:11px;min-height:34px}.guide-select{margin-left:0}.cards{gap:8px}.card{padding:13px;min-height:182px;border-radius:14px}.card-icon{width:30px;height:30px}.card-icon .icon{width:16px;height:16px}.card-top{margin-bottom:10px}.kind{font-size:9px}.card-title{font-size:19px}.card-description{font-size:12px}.card-bottom{font-size:10px}.guide-layout{display:block;min-height:0;border-radius:17px}.guide-tabs{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:8px;scrollbar-width:thin}.guide-tabs button{width:auto;min-width:max-content;min-height:37px;font-size:11px;padding:7px}.guide-tabs button .icon{width:14px;height:14px}.guide-panel{padding:17px;min-height:285px}.guide-enter{grid-template-columns:minmax(0,1fr) minmax(77px,27%);gap:10px}.navigation-block{grid-template-columns:1fr;gap:12px}.source-card{padding:10px;min-height:67px}.source-card strong{font-size:12px}.source-card span:not([data-icon]){font-size:11px}.notice{flex-wrap:wrap;padding:12px}.notice .text-button{margin-left:44px}.footer{margin-top:39px}.footer-inner{min-height:65px}.footer-inner>span{display:none}}
@media(max-width:390px){.frame{width:calc(100% - 26px)}.nav a{padding-inline:6px}.hero-actions .button{font-size:11px;padding-inline:9px}.cards{grid-template-columns:1fr}.card{min-height:155px}.source-list{grid-template-columns:1fr}.dialog-content{padding:18px}}
@media(max-width:360px){.header-inner{grid-template-columns:auto minmax(0,1fr) auto;gap:4px}.brand{font-size:16px;gap:4px}.brand-mark{width:28px;height:28px}.nav{justify-self:center}.nav a{font-size:10px;padding-inline:4px}.nav-search{padding:6px}.hero h1{font-size:clamp(34px,13vw,51px)}.hero-actions .button{gap:5px;padding-inline:7px}.nav-methods{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-art img{transform:none!important}}
