[hidden]{display:none!important}
:root{--navy:#141a33;--ink:#1d2340;--blue:#2f7cf6;--sky:#4aa3ff;--deep:#1a56c8;--lime:#a6e22e;--orange:#ff5a1f;--bg:#eef3fb;--card:#fff;--line:#dfe7f5;--side:268px}
*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}
body{font-family:"Segoe UI",system-ui,-apple-system,Roboto,sans-serif;background:var(--bg);color:var(--ink);overflow:hidden}
a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}
#splash{position:fixed;inset:0;z-index:100;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;transition:opacity .5s,visibility .5s}
#splash img{width:min(380px,70vw);animation:pop 1s cubic-bezier(.2,.9,.3,1.3) both}
#splash .bar{width:min(260px,50vw);height:6px;border-radius:9px;background:#e8eefb;overflow:hidden}#splash .bar i{display:block;height:100%;width:40%;border-radius:9px;background:linear-gradient(90deg,var(--sky),var(--lime),var(--orange));animation:load 1.1s ease-in-out infinite}
#splash.done{opacity:0;visibility:hidden}
@keyframes pop{from{transform:scale(.6) rotate(-6deg);opacity:0}to{transform:none;opacity:1}}@keyframes load{0%{transform:translateX(-110%)}100%{transform:translateX(260%)}}
#side{position:fixed;left:0;top:0;bottom:0;width:var(--side);background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20;transition:transform .25s}
.brand{display:block;padding:16px 22px 6px}.brand img{width:100%;max-width:200px;display:block;margin:auto}
#nav{flex:1;overflow:auto;padding:6px 12px 12px}
#nav h3{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#8a93ad;margin:14px 10px 6px}
.gi{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:14px;margin:2px 0;transition:background .15s,transform .15s;position:relative}
.gi:hover{background:#f1f5ff;transform:translateX(2px)}.gi.on{background:linear-gradient(90deg,rgba(47,124,246,.14),rgba(166,226,46,.12));}
.gi.on::before{content:"";position:absolute;left:-12px;top:10px;bottom:10px;width:4px;border-radius:4px;background:var(--blue)}
.gi .ic{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:20px;flex:none;box-shadow:inset 0 -3px 0 rgba(0,0,0,.12);overflow:hidden}
.gi .ic img{width:100%;height:100%;object-fit:cover}
.gi b{display:block;font-size:14.5px;font-weight:700;line-height:1.15}.gi small{font-size:11.5px;color:#7c86a2}
.tag{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.06em;padding:2px 8px;border-radius:99px;background:#e9f0ff;color:var(--deep);vertical-align:middle}
.tag.proto{background:#f1fbe0;color:#4f7a00}.tag.new{background:#fff0e8;color:#d4430c}
#me{border-top:1px solid var(--line);padding:12px 14px;display:flex;align-items:center;gap:10px}
.av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--lime));color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;flex:none}
#me .nm{flex:1;min-width:0}#me .nm b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#me .nm small{font-size:11.5px;color:#7c86a2}
.ib{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:16px;font-weight:700;transition:all .15s}
.ib:hover{border-color:var(--blue);color:var(--blue);transform:translateY(-1px)}
#mtop{display:none}
#main{position:absolute;left:var(--side);right:0;top:0;bottom:0;overflow:auto}
#home{padding:30px clamp(18px,3vw,44px) 50px;max-width:1500px}
.hero{border-radius:26px;padding:clamp(22px,3.5vw,44px);color:#fff;position:relative;overflow:hidden;background:linear-gradient(120deg,#1a56c8,#2f7cf6 45%,#4aa3ff);box-shadow:0 18px 50px rgba(26,86,200,.28)}
.hero h1{font-size:clamp(26px,3.4vw,44px);line-height:1.05;max-width:640px}.hero p{max-width:560px;margin-top:10px;opacity:.92;font-size:16px;line-height:1.45}
.hero .cta{display:inline-flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.btn{border:0;border-radius:14px;padding:12px 20px;font-weight:900;font-size:15px;color:#fff;background:linear-gradient(135deg,var(--orange),#ff3d6e);box-shadow:0 8px 20px rgba(255,90,31,.35);transition:transform .15s}
.btn:hover{transform:translateY(-2px)}.btn.ghost{background:rgba(255,255,255,.16);box-shadow:none;border:1px solid rgba(255,255,255,.45)}
.hero .blob{position:absolute;border-radius:50%;filter:blur(2px);opacity:.35;animation:fl 9s ease-in-out infinite}
@keyframes fl{50%{transform:translateY(-18px) scale(1.06)}}
.sec{margin:34px 0 14px;display:flex;align-items:baseline;gap:12px}.sec h2{font-size:22px}.sec span{color:#7c86a2;font-size:14px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.gc{background:var(--card);border-radius:20px;overflow:hidden;border:1px solid var(--line);transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}
.gc:hover{transform:translateY(-5px);box-shadow:0 18px 40px rgba(20,40,90,.16)}
.gc .th{aspect-ratio:16/10;position:relative;display:flex;align-items:center;justify-content:center;font-size:56px;overflow:hidden}
.gc .th img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}.gc:hover .th img{transform:scale(1.06)}
.gc .th .play{position:absolute;right:12px;bottom:12px;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 6px 16px rgba(0,0,0,.25);opacity:0;transform:scale(.7);transition:all .2s}
.gc:hover .play{opacity:1;transform:none}
.gc .bd{padding:13px 15px 15px}.gc .bd b{font-size:16px;display:block;margin-bottom:3px}.gc .bd p{font-size:13px;color:#5d6785;line-height:1.35}
#stage{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--bg)}
.sbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:#fff;border-bottom:1px solid var(--line)}
.sinfo{display:flex;align-items:center;gap:10px;min-width:0}.sinfo h1{font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ver{font-size:12px;color:#7c86a2}
.sact{display:flex;gap:6px}
#frames{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:14px;background:radial-gradient(circle at 50% 30%,#1b2a5a,#0d1226 70%);overflow:hidden}
#frames iframe{border:0;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.5);width:100%;height:100%;display:block}
#frames iframe.portrait{width:auto;height:100%;aspect-ratio:10/16;max-width:100%}
#frames iframe.hidden{display:none}
#loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#cfe0ff;pointer-events:none;transition:opacity .3s}
#loading img{width:84px;border-radius:22px;animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.1)}}
#loading.off{opacity:0}
#drawer{position:fixed;right:16px;top:70px;bottom:16px;width:min(340px,92vw);background:#fff;border-radius:20px;box-shadow:0 20px 60px rgba(10,20,60,.35);z-index:40;display:flex;flex-direction:column;overflow:hidden}
.dh{display:flex;align-items:center;gap:8px;padding:14px 14px 8px}.dh span{flex:1;color:#7c86a2;font-size:13px}
.tabs{display:flex;gap:6px;padding:0 14px 10px}.tabs button{flex:1;border:1px solid var(--line);background:#fff;border-radius:10px;padding:7px;font-weight:700;font-size:13px}.tabs button.on{background:var(--blue);color:#fff;border-color:var(--blue)}
#dList{flex:1;overflow:auto;padding:0 14px 14px}
.lb{list-style:none}.lb li{display:flex;gap:10px;align-items:center;padding:9px 10px;border-radius:12px;margin:4px 0;background:#f5f8ff}.lb li span{width:30px;font-weight:900;color:#7c86a2}.lb li b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb li i{font-style:normal;font-weight:900;color:var(--deep)}
.lb li.me{background:#f1fbe0;outline:1px solid #b8e07a}.lb li:nth-child(1) span{color:#e0a800}.lb li:nth-child(2) span{color:#8a96a8}.lb li:nth-child(3) span{color:#c06a2b}
#modal{position:fixed;inset:0;z-index:60;background:rgba(13,18,38,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.mc{background:#fff;border-radius:22px;padding:24px;width:min(560px,100%);max-height:90vh;overflow:auto;position:relative}.mx{position:absolute;right:14px;top:14px}
.mc h2{margin-bottom:12px}.mc table{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}.mc td{padding:7px 4px;border-bottom:1px solid var(--line)}.mc td:last-child{text-align:right;color:#5d6785;font-variant-numeric:tabular-nums}
.mc input{width:100%;padding:11px 12px;border-radius:12px;border:1px solid var(--line);font-size:15px;margin:6px 0 10px}
.mc .row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.note{font-size:12.5px;color:#7c86a2;line-height:1.4;margin-top:8px}
@media (max-width:860px){:root{--side:0px}#side{transform:translateX(-100%);width:280px;box-shadow:0 0 50px rgba(0,0,0,.3)}body.menu #side{transform:none}
 #mtop{display:flex;position:fixed;left:0;right:0;top:0;height:56px;background:#fff;border-bottom:1px solid var(--line);align-items:center;justify-content:space-between;padding:0 10px;z-index:15}#mtop img{height:40px}#burger{font-size:22px;border:0;background:none;width:44px;height:44px}
 #main{top:56px}#frames{padding:0}#frames iframe,#frames iframe.portrait{border-radius:0;width:100%;height:100%;aspect-ratio:auto}.sbar{padding:8px 10px}.sinfo h1{font-size:16px}#bMode,#bNew{display:none}}
