:root{font-family:Inter,'Segoe UI',Arial,sans-serif;color:#e7eff8;background:#080e18;font-size:14px;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{background:radial-gradient(ellipse at 75% 38%,#122237 0%,#080e18 62%)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #3cc8d1;outline-offset:3px}button{color:inherit}a{color:inherit;text-decoration:none}
.shell{display:grid;grid-template-columns:350px minmax(300px,1fr) 294px;grid-template-rows:75px 1fr;min-height:100vh;height:100dvh}.topbar{grid-column:1/-1;display:flex;align-items:center;padding:0 27px;border-bottom:1px solid #27384a;gap:30px;background:#0d1724;z-index:5}.brand{display:flex;align-items:center;gap:12px;min-width:315px}.brand-symbol{display:grid;place-items:center;width:42px;height:42px;border:1px solid #2bafbd;border-radius:12px;background:linear-gradient(145deg,#154957,#101e2b);color:#80eef2;font-size:26px;font-weight:900}.brand strong{font-size:19px;letter-spacing:2px}.brand small{display:block;color:#70889e;font-size:9px;letter-spacing:2.6px;margin-top:4px}.header-note{font-size:11px;letter-spacing:1.7px;color:#66849b;text-transform:uppercase}.header-note strong{color:#79dce2}.top-pill{margin-left:auto;border:1px solid #2f4c56;color:#78ccd1;background:#112630;padding:8px 12px;border-radius:30px;font-size:10px;font-weight:800;letter-spacing:1.1px}.sidebar{border-right:1px solid #243447;background:#0b1420;display:flex;flex-direction:column;min-height:0}.sidebar-intro{padding:23px 20px 14px}.eyebrow{font-size:10px;letter-spacing:2.5px;color:#5acdd5;font-weight:800;text-transform:uppercase}.sidebar h2{font-weight:720;font-size:21px;letter-spacing:-.4px;margin:11px 0 5px}.muted{color:#7d92a6;font-size:12px;line-height:1.5}.search-wrap{position:relative;margin-top:17px}.search-wrap span{position:absolute;left:14px;top:10px;color:#6991a4;font-size:18px}.search-wrap input{width:100%;background:#111f2e;border:1px solid #283c52;border-radius:9px;color:#e0f3ff;padding:12px 12px 12px 40px;outline:none}.search-wrap input:focus{border-color:#4ccfd3}.category-scroll{display:flex;gap:7px;overflow-x:auto;padding:0 20px 14px;scrollbar-width:none}.category-scroll::-webkit-scrollbar{display:none}.filter{background:#122032;border:1px solid #26364b;border-radius:20px;font-size:11px;color:#9cafbf;white-space:nowrap;padding:7px 12px}.filter.active{border-color:#3ba8b6;color:#c0fbf7;background:#11313b}.catalog-head{display:flex;justify-content:space-between;border-block:1px solid #233447;padding:13px 21px;color:#8094a9;font-size:10px;letter-spacing:1.4px;font-weight:750}.asset-list{overflow-y:auto;padding:10px;flex:1;min-height:0;scrollbar-color:#314456 transparent;scrollbar-width:thin}.asset-card{display:flex;width:100%;border:1px solid transparent;border-radius:10px;align-items:center;text-align:left;background:transparent;padding:10px 8px;margin:2px 0;gap:11px;transition:background .16s,border-color .16s}.asset-card:hover{background:#152539}.asset-card.active{border-color:#23636d;background:linear-gradient(120deg,#153341,#132435)}.asset-art{width:62px;height:62px;display:grid;place-items:center;flex-shrink:0;border-radius:9px;background:radial-gradient(circle at 32% 27%,#356b7b,#163343 52%,#0c1b29);border:1px solid #32556a}.asset-art.space{background:radial-gradient(circle at 20% 24%,#617bad,#25395d 60%,#141e35)}.asset-art.ocean{background:radial-gradient(circle at 20% 25%,#277a9e,#153e5c 60%,#0d2032)}.asset-art.agriculture{background:radial-gradient(circle at 20% 25%,#368b74,#1b4b45 60%,#112c30)}.asset-art.energy{background:radial-gradient(circle at 20% 25%,#966f39,#51412b 60%,#27251f)}.category-symbol{font-size:29px;text-shadow:0 0 25px #61f0e766;color:#d4ecf5}.asset-copy{flex:1;min-width:0}.asset-title{display:block;font-weight:750;font-size:13px;color:#e4eff8;line-height:1.3}.asset-sub{display:block;color:#95adc1;font-size:11px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-micro{display:block;font-size:9px;letter-spacing:.45px;color:#5c8c97;margin-top:7px}.asset-card .arrow{font-size:20px;color:#53788c}.empty{padding:18px;color:#91a8b7}
.stage{position:relative;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 45% 30%,#142a43 0%,#0c1c30 45%,#08111e 100%)}#viewport{width:100%;height:100%;display:block;touch-action:none;cursor:grab}#viewport:active{cursor:grabbing}.stage-top{position:absolute;top:24px;left:26px;pointer-events:none}.stage-tag{display:inline-flex;gap:8px;align-items:center;font-size:10px;letter-spacing:1.9px;font-weight:760;color:#9bdfec;background:#102a3eb8;border:1px solid #2b6377;padding:9px 12px;border-radius:7px}.stage-tag:before{content:'';width:6px;height:6px;border-radius:50%;background:#62e5cb;box-shadow:0 0 8px #62e5cb}.stage-caption{color:#6e90a8;letter-spacing:1.3px;font-size:10px;margin-top:15px;text-transform:uppercase}.stage-bottom{position:absolute;bottom:19px;left:25px;right:25px;display:flex;align-items:center;gap:12px;pointer-events:none}.stage-bottom .live{font-size:10px;color:#4c9dab;letter-spacing:1px}.stage-bottom .right{margin-left:auto;color:#5b7890;letter-spacing:1px;font-size:10px}.stage-center-mark{position:absolute;left:50%;top:50%;width:18px;height:18px;border:1px solid #477a9550;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none}.loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#101e2bdf;border:1px solid #2e5363;border-radius:10px;padding:19px 25px;color:#9bdce7;letter-spacing:1.5px;font-size:11px;white-space:nowrap}.error{position:absolute;top:72px;left:20px;right:20px;padding:12px;background:#672b2baa;color:#ffe5e5;border-radius:9px;z-index:8;line-height:1.5}.right-panel{border-left:1px solid #26384b;background:#0d1724;min-height:0;overflow-y:auto;padding:22px 20px 30px;scrollbar-color:#314456 transparent;scrollbar-width:thin}.detail-category{font-size:10px;font-weight:800;color:#65c6ce;letter-spacing:2.1px}.model-name{font-size:21px;line-height:1.17;font-weight:790;letter-spacing:-.65px;margin:14px 0 11px}.model-description{font-size:12px;line-height:1.65;color:#8ea2b6;min-height:75px}.model-status{display:flex;align-items:center;gap:7px;color:#65cba8;font-size:10px;letter-spacing:1px;margin:12px 0 21px}.model-status:before{content:'';width:7px;height:7px;background:#53d1a1;border-radius:50%}.detail-section{border-top:1px solid #26394d;padding:17px 0}.section-title{font-size:10px;letter-spacing:1.6px;color:#9db2c4;font-weight:800;margin-bottom:13px}.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.spec{background:#142338;border:1px solid #20364a;border-radius:8px;padding:11px 9px}.spec-number{font-size:17px;color:#f2f8fc;font-weight:760}.spec-caption{font-size:9px;letter-spacing:.8px;color:#688a9e;margin-top:6px}.control-btn{border:1px solid #2a4057;border-radius:7px;background:#142235;color:#8fa8b8;padding:10px 11px;text-align:left;font-size:11px;font-weight:640}.control-btn.selected{border-color:#236977;color:#89d9dc;background:#11313e}.button-stack{display:grid;grid-template-columns:1fr 1fr;gap:8px}.button-stack .full{grid-column:1/-1}.range-row{display:flex;align-items:center;justify-content:space-between;margin-top:18px;font-size:12px;color:#9fb4c6}.range-row output{color:#9de6ee;font-weight:760}input[type=range]{accent-color:#54cbd3;width:100%;margin:13px 0 0}.download{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(110deg,#1e9bb0,#1b6f83);border:1px solid #4ccbd8;color:white;border-radius:9px;padding:13px;margin-top:14px;font-size:12px;font-weight:750;letter-spacing:.6px}.download:hover{filter:brightness(1.18)}.outline-action{background:transparent;border:1px solid #36526a;border-radius:9px;padding:12px;margin-top:8px;width:100%;color:#b2d2dd;font-size:12px}.side-note{font-size:10px;line-height:1.6;color:#608399;margin-top:14px}.hint{color:#4f7088;font-size:10px;margin-top:12px;line-height:1.6}.square{font-size:16px}.right-small{font-size:10px;color:#5f8399}.statusbar{display:flex;align-items:center;justify-content:space-between;padding:11px 15px;border-radius:8px;background:#0f2332;color:#709dae;letter-spacing:.6px;font-size:10px}#fps{color:#6cddb7}
@media (max-width:1150px){.shell{grid-template-columns:285px 1fr 250px}.brand{min-width:270px}.topbar{padding:0 18px}.right-panel{padding:20px 14px}.model-name{font-size:19px}.asset-art{width:50px;height:50px}.asset-title{font-size:12px}}
@media (max-width:860px){.shell{grid-template-columns:235px 1fr;grid-template-rows:64px 1fr}.right-panel{position:absolute;right:12px;bottom:12px;width:235px;max-height:43vh;background:#0c1925ef;border:1px solid #273d52;border-radius:11px;z-index:4;padding:12px}.right-panel .model-description,.right-panel .model-status,.right-panel .spec-grid,.right-panel .detail-section:nth-of-type(2),.right-panel .hint,.right-panel .side-note,.right-panel .outline-action,.right-panel .section-title{display:none}.right-panel .detail-section{padding:5px 0;border:0}.model-name{font-size:16px;margin:8px 0}.download{margin-top:3px;padding:10px}.header-note{display:none}.brand{min-width:0}}
@media (max-width:560px){.shell{grid-template-columns:1fr;grid-template-rows:60px minmax(0,1fr) 190px}.topbar{padding:0 12px}.brand strong{font-size:16px}.brand small{font-size:8px}.top-pill{font-size:8px}.sidebar{grid-row:3;grid-column:1;border-top:1px solid #26384b;border-right:0}.sidebar-intro{padding:6px 12px}.sidebar h2,.sidebar .muted,.search-wrap,.category-scroll,.catalog-head{display:none}.asset-list{display:flex;flex-direction:row;padding:6px;overflow-x:auto;overflow-y:hidden}.asset-card{min-width:155px;padding:6px;gap:6px}.asset-art{width:39px;height:45px}.asset-copy{width:93px}.asset-title{font-size:10px}.asset-micro{font-size:8px}.asset-sub{font-size:9px}.stage{grid-row:2;grid-column:1}.right-panel{right:8px;bottom:206px;width:205px;max-height:none}.topbar{grid-row:1}.stage-tag{font-size:8px}.stage-top{top:12px;left:12px}}

.asset-art{overflow:hidden}.asset-art img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .24s ease}.asset-card:hover .asset-art img{transform:scale(1.1)}
