:root{--fg:#cdd5e0;--dim:#8591a4;--accent:#9cc8ff;--panel:#080c1294;--panel-solid:#090d13eb;--line:#96beff2e;--hover:#96beff1a;--active:#96beff33;--gap:12px;font-family:Segoe UI,Helvetica Neue,system-ui,-apple-system,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-size:12px;line-height:1.5}*{box-sizing:border-box}html,body{height:100%;color:var(--fg);-webkit-user-select:none;user-select:none;background:#000;margin:0;overflow:hidden}#view{cursor:default;touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#view.dragging{cursor:grabbing}#labels,#hud{pointer-events:none;position:fixed;inset:0;overflow:hidden}#hud{--dock:0px}#hud.open-browser{--dock:162px}body.ui-hidden #hud,body.ui-hidden #labels{display:none}.panel{pointer-events:auto;background:var(--panel);border:1px solid var(--line);border-radius:3px;padding:8px 10px;position:absolute}.hidden{display:none}.kv{grid-template-columns:auto 1fr;gap:1px 16px;display:grid}.kv .k{color:var(--dim);white-space:nowrap}.kv .v{white-space:nowrap;font-variant-numeric:tabular-nums}button{font:inherit;color:var(--fg);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:2px;padding:2px 8px}button:hover{background:var(--hover);color:#fff}button:focus-visible,input:focus-visible{outline:1px solid var(--accent);outline-offset:1px}kbd{font:inherit;text-align:center;min-width:16px;color:var(--dim);border:1px solid var(--line);border-radius:2px;margin-left:6px;padding:0 4px;font-size:10px;line-height:14px;display:inline-block}.title{letter-spacing:.12em;text-transform:uppercase;color:var(--dim);justify-content:space-between;align-items:center;margin:-2px 0 8px;font-size:10px;display:flex}.title .x{width:20px;height:20px;color:var(--dim);border:none;place-items:center;margin-right:-4px;padding:0;display:grid}.title .x svg{width:14px;height:14px}.orb{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.toolbar{right:var(--gap);top:var(--gap);pointer-events:auto;opacity:.55;flex-direction:column;gap:2px;transition:opacity .2s;display:flex;position:absolute}.toolbar:hover{opacity:1}.toolbar .sep{height:6px}.tool{background:var(--panel);width:34px;height:34px;color:var(--fg);place-items:center;padding:0;display:grid;position:relative}.tool svg{width:20px;height:20px}.tool.on,.tbtn.on,.info .more.on{color:var(--accent);border-color:#9cc8ff73}.tip{background:var(--panel-solid);border:1px solid var(--line);white-space:nowrap;color:var(--fg);opacity:0;pointer-events:none;z-index:5;border-radius:2px;padding:2px 8px;font-size:11px;transition:opacity .12s;position:absolute;top:50%;right:42px;transform:translateY(-50%)}.tool:hover .tip,.tbtn:hover .tip{opacity:1;transition-delay:.25s}.tbtn .tip{inset:auto auto 28px 50%;transform:translate(-50%)}.tbtn:last-child .tip{left:auto;right:-2px;transform:none}.tool[aria-expanded=true] .tip{display:none}.music-panel{background:var(--panel-solid);z-index:6;width:220px;max-width:calc(100vw - 78px);max-height:calc(100vh - 24px);padding:12px;overflow-y:auto}.music-panel .title{margin:0 0 10px;font-weight:400}.music-play,.music-volume{justify-content:space-between;align-items:center;display:flex}.music-play label{cursor:pointer;align-items:center;gap:7px;display:flex}.music-play input{accent-color:var(--accent);margin:0}.music-volume{color:var(--dim);margin:12px 0 4px}.music-volume output{color:var(--fg);font-variant-numeric:tabular-nums}.music-panel input[type=range]{width:100%;height:20px;accent-color:var(--accent);cursor:pointer;margin:0;display:block}.info{left:var(--gap);top:var(--gap);min-width:220px;max-width:300px;max-height:25vh;overflow-y:auto}.info.full{max-height:calc(100vh - var(--dock) - 150px)}.info .name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:16px;line-height:1.25;overflow:hidden}.info .cls{color:var(--accent);margin:0 0 5px;font-size:11px}.info .kv{column-gap:12px;font-size:11px}.info .actions{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.info .actions button{padding:1px 6px;font-size:11px}.info .actions kbd{margin-left:4px;padding:0 3px;line-height:12px}.info .actions .more{margin-left:auto}.ctx{background:var(--panel-solid);z-index:10;min-width:168px;padding:3px;top:0;left:0}.ctx .hd{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);white-space:nowrap;padding:2px 8px 3px;font-size:10px}.ctx .item{text-align:left;border:none;justify-content:space-between;align-items:center;width:100%;padding:2px 8px;display:flex}.ctx .item kbd{margin-left:16px}.move{left:var(--gap);bottom:calc(var(--gap) + var(--dock));min-width:220px;font-size:11px}.move .kv{column-gap:12px}.move .mode{letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin:-2px 0 5px;font-size:10px}.move .mode.auto{color:var(--accent)}.move .limit{color:var(--dim);visibility:hidden;margin-left:8px;font-size:10px}.move .limit.show{visibility:visible}.clock{right:var(--gap);bottom:calc(var(--gap) + var(--dock));text-align:right;min-width:190px;font-size:11px}.clock .date{font-variant-numeric:tabular-nums;white-space:pre}.clock .rate{color:var(--dim)}.clock .rate.odd{color:var(--accent)}.timebar{justify-content:flex-end;gap:2px;margin-top:5px;display:flex}.tbtn{place-items:center;width:26px;height:20px;padding:0;display:grid;position:relative}.tbtn .ic{place-items:center;display:grid}.tbtn svg{width:15px;height:15px}.toolbar,.info,.move,.clock{transition:opacity .6s}#hud.idle .toolbar{opacity:0}#hud.open-music .toolbar,#hud .toolbar:focus-within{opacity:1}#hud.idle .info,#hud.idle .clock{opacity:.35}#hud.idle .move{opacity:.7}.toast{left:50%;bottom:calc(var(--gap) + var(--dock) + 4px);background:var(--panel);border:1px solid var(--line);white-space:nowrap;opacity:0;border-radius:2px;padding:4px 12px;transition:opacity .35s;position:absolute;transform:translate(-50%)}.toast.show{opacity:1}.speed-note{letter-spacing:.04em;color:#e8eef8;text-shadow:0 0 6px #000000e6;white-space:nowrap;pointer-events:none;opacity:0;font-size:15px;transition:opacity .5s;position:absolute;top:14px;left:50%;transform:translate(-50%)}.speed-note.show{opacity:1;transition:opacity .12s}.browser{left:var(--gap);right:var(--gap);bottom:var(--gap);height:150px;padding:6px 10px 2px;display:none}.browser .title{margin:0 0 2px}#hud.open-browser .browser{display:block}.browser .strip{align-items:flex-start;gap:4px;height:122px;display:flex;overflow:auto hidden}.browser .col{flex-direction:column;flex:none;align-items:center;min-width:76px;display:flex}.browser .col.star{border-right:1px solid var(--line);min-width:84px;height:116px;margin-right:6px;padding-right:8px}.browser .item{cursor:pointer;border:1px solid #0000;border-radius:2px;flex-direction:column;align-items:center;padding:0 6px 2px;display:flex}.browser .stage{place-items:center;width:100%;min-width:56px;height:40px;display:grid;position:relative}.browser .ring{clip-path:polygon(0 46%,100% 46%,100% 100%,0 100%);border:1.5px solid #d6c4a0bf;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-16deg)}.browser .nm{white-space:nowrap}.browser .moons{flex-direction:column;align-self:stretch;margin-top:1px;display:flex}.browser .moon{height:14px;color:var(--dim);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:2px;align-items:center;gap:5px;padding:0 6px;font-size:10px;line-height:12px;display:flex}.browser .moon .orb{margin:0 auto 0 0}.browser .moon span{flex:1}.browser .item:hover,.browser .moon:hover{background:var(--hover);color:#fff}.browser .item.sel,.browser .moon.sel{background:var(--hover);color:#fff;border-color:#9cc8ff8c}.browser .empty,.results .empty{color:var(--dim);padding:8px 4px}.dialog{background:var(--panel-solid);max-width:calc(100vw - 120px);display:none;top:16%;left:50%;transform:translate(-50%)}#hud.open-search .dialog.search,#hud.open-help .dialog.help,#hud.open-settings .dialog.settings,#hud.open-scenic .dialog.scenic{display:block}.dialog.search{width:420px}.field{width:100%;font:inherit;color:#fff;border:1px solid var(--line);-webkit-user-select:text;user-select:text;background:#00000059;border-radius:2px;outline:none;padding:5px 8px}.field:focus{border-color:#9cc8ff8c}.field::placeholder{color:var(--dim)}.results{max-height:286px;margin:8px -4px 0;overflow-y:auto}.results .row{cursor:pointer;border-radius:2px;align-items:center;gap:8px;padding:2px 6px;display:flex}.results .row .d{color:var(--dim);margin-left:auto}.results .row:hover{background:var(--hover)}.results .row.cur{background:var(--active);color:#fff}.foot{border-top:1px solid var(--line);color:var(--dim);justify-content:space-between;align-items:center;margin-top:8px;padding-top:8px;display:flex}.foot kbd:first-child{margin-left:0}.foot kbd{margin-left:12px;margin-right:5px}.dialog.help{width:660px}.help .cols{grid-template-columns:1fr 1fr;gap:0 28px;display:grid}.help section+section{margin-top:12px}.help h3{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--line);margin:0 0 4px;padding-bottom:3px;font-size:10px;font-weight:400}.help .keys{grid-template-columns:112px 1fr;align-items:center;row-gap:2px;display:grid}.help .keycap kbd{color:var(--fg);margin:0 3px 0 0}.help .keycap em{color:var(--dim);margin-right:3px;font-style:normal}.help .credits{margin-top:14px}.help .credits ul{color:var(--dim);max-height:150px;margin:0;padding:0 0 0 14px;font-size:10.5px;line-height:1.45;overflow-y:auto}.help .credits a{color:var(--fg)}.dialog.settings{width:380px}.form{grid-template-columns:auto 1fr;align-items:center;gap:7px 16px;display:grid}.form .k{color:var(--dim)}.form .v{align-items:center;gap:10px;display:flex}.form input[type=range]{accent-color:var(--accent);flex:1;height:14px;margin:0}.form input[type=checkbox]{accent-color:var(--accent);width:13px;height:13px;margin:0}.form .out{text-align:right;font-variant-numeric:tabular-nums;width:34px}.form .hint{color:var(--dim)}.form .sect{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--line);grid-column:1/-1;margin-top:6px;padding-bottom:3px;font-size:10px}.form .track .tn{text-overflow:ellipsis;white-space:nowrap;color:#fff;flex:1;min-width:0;overflow:hidden}.form .track .tn.none{color:var(--dim)}.form .track{gap:6px}.form .note,.help .note{color:var(--dim);grid-column:1/-1;margin:0;font-size:11px;line-height:1.45}.help .note{margin-top:12px}code{color:var(--fg);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:10.5px}.dialog.scenic{width:900px;top:9%}#hud.open-scenic .info{display:none}.cards{max-height:calc(100vh - 9vh - var(--dock) - 170px);grid-template-columns:repeat(4,1fr);gap:10px;display:grid;overflow-y:auto}.card{text-align:left;background:#00000040;flex-direction:column;align-items:stretch;gap:1px;padding:0 0 7px;display:flex;overflow:hidden}.card:hover{border-color:#9cc8ff8c}.card>span{padding:0 8px}.card .thumb{aspect-ratio:16/9;color:#96beff47;border-bottom:1px solid var(--line);background:radial-gradient(120% 90% at 50% 100%,#7896c829,#080b1199 70%);place-items:center;margin-bottom:6px;padding:0;display:grid;position:relative}.card .thumb svg{width:30px;height:30px}.card .thumb img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .25s;position:absolute;inset:0}.card .thumb.ok img{opacity:1}.card .t{color:#fff;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.card .t b{white-space:nowrap;text-overflow:ellipsis;font-weight:400;overflow:hidden}.card .t i{color:var(--accent);white-space:nowrap;flex:none;font-style:normal}.card .s{letter-spacing:.08em;text-transform:uppercase;color:var(--dim);font-size:10px}.card .d{color:var(--dim);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;line-height:1.4;display:-webkit-box;overflow:hidden}.label{white-space:nowrap;letter-spacing:.02em;color:#becde1d9;text-shadow:0 0 3px #000,0 0 2px #000;will-change:transform;height:16px;font-size:11px;line-height:16px;position:absolute;top:0;left:0}.label.star{color:#f0e2c4e6}.label.moon{color:#a0acbebf}.label.blackhole{color:#ecc8a0e6}.label.sel{color:var(--accent)}.label .d{color:var(--dim);margin-left:7px}.marker{will-change:transform;position:absolute;top:0;left:0}.marker i{border:0 solid var(--accent);opacity:.9;width:6px;height:6px;position:absolute}.marker i:first-child{border-top-width:1px;border-left-width:1px;top:0;left:0}.marker i:nth-child(2){border-top-width:1px;border-right-width:1px;top:0;right:0}.marker i:nth-child(3){border-bottom-width:1px;border-left-width:1px;bottom:0;left:0}.marker i:nth-child(4){border-bottom-width:1px;border-right-width:1px;bottom:0;right:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}::-webkit-scrollbar-track{background:0 0}@media (width<=1400px){#hud.open-help .info,#hud.open-search .info,#hud.open-settings .info{display:none}}@media (width<=1180px){.dialog.help{width:560px}.help .keys{grid-template-columns:104px 1fr}.cards{grid-template-columns:repeat(3,1fr)}}
