*{box-sizing:border-box}body{margin:0;background:#f5f6f8;color:#191b1f;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif}.shell{max-width:1120px;margin:auto;padding:0 22px 32px}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px}.logo{width:38px;height:38px;border-radius:11px;background:#17191d;color:#fff;display:grid;place-items:center;font-weight:800}.brand b{display:block;font-size:15px}.brand small{display:block;color:#8d929b;font-size:11px;margin-top:3px}.server-status{font-size:12px;color:#747a84;display:flex;gap:8px;align-items:center}.server-status i{width:8px;height:8px;border-radius:50%;background:#aaa}.server-status.ok i{background:#35a76a;box-shadow:0 0 0 4px #dff4e8}.hero{background:#1c1e22;color:#fff;border-radius:24px;padding:42px 46px;display:flex;justify-content:space-between;align-items:center;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:2px;color:#999fa8}.hero h1{font-size:42px;line-height:1.1;letter-spacing:-2px;margin:13px 0}.hero em{font-style:normal;color:#baff8e}.hero p{max-width:620px;color:#aeb3bc;line-height:1.7;margin:0}.engine-card{width:190px;display:grid;grid-template-columns:1fr 30px 1fr;gap:8px;align-items:center;text-align:center;position:relative}.engine-card strong{border:1px solid #44474d;padding:16px 5px;border-radius:13px}.engine-card span{color:#baff8e}.engine-card small{grid-column:1/4;color:#888e98;margin-top:5px}.panel{background:#fff;border:1px solid #e6e8ec;border-radius:20px;margin-top:18px;padding:18px;box-shadow:0 8px 30px #1c20280b}.drop{min-height:265px;border:1.5px dashed #cbd0d7;border-radius:16px;background:#fafbfc;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:.2s}.drop.over{background:#f0f3f5;border-color:#1c1e22}.upload-symbol{width:52px;height:52px;border-radius:15px;background:#1c1e22;color:#fff;display:grid;place-items:center;font-size:27px}.drop h2{font-size:20px;margin:14px 0 6px}.drop p{font-size:12px;color:#8b919b;margin:0 0 17px}.primary,#chooseBtn{border:0;border-radius:10px;background:#1c1e22;color:#fff;padding:11px 20px;font-weight:700}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel-head h2{font-size:18px;margin:0 0 4px}.panel-head p{font-size:12px;color:#9297a0;margin:0}.secondary{border:1px solid #e0e3e7;background:#fff;border-radius:9px;padding:8px 13px;color:#666}.list{margin-top:16px;display:grid;gap:9px}.empty{text-align:center;color:#999fa8;padding:30px}.row{display:grid;grid-template-columns:42px 1fr auto auto;align-items:center;gap:12px;border:1px solid #e5e8ec;border-radius:13px;padding:11px 14px}.icon{width:38px;height:38px;background:#eef0f3;border-radius:10px;display:grid;place-items:center;font-size:10px;font-weight:800}.name{font-weight:650;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta{font-size:11px;color:#959aa3;margin-top:4px}.state{font-size:12px;color:#777d86}.download{color:#fff;background:#1c1e22;text-decoration:none;padding:8px 11px;border-radius:8px;font-size:12px}.actions{display:flex;justify-content:flex-end;margin-top:15px}.primary:disabled{opacity:.4;cursor:not-allowed}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.features>div{background:#fff;border:1px solid #e6e8ec;border-radius:16px;padding:18px}.features b{font-size:11px;color:#999;display:block}.features strong{display:block;margin:9px 0 6px;font-size:14px}.features span{display:block;font-size:11px;line-height:1.65;color:#838993}footer{text-align:center;color:#a3a7ae;font-size:11px;padding:25px}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,20px);opacity:0;background:#1c1e22;color:#fff;border-radius:10px;padding:11px 16px;font-size:12px;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:700px){.shell{padding:0 13px 25px}.hero{padding:30px 24px}.hero h1{font-size:32px}.engine-card{display:none}.features{grid-template-columns:1fr}.row{grid-template-columns:38px 1fr}.state,.download{grid-column:2}.actions .primary{width:100%}}
