@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:500;src:url(./nunito-latin-500-normal-EugFkASW.woff2)format("woff2"),url(./nunito-latin-500-normal-B5klmw3Q.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(./nunito-latin-700-normal-OcDqTBcA.woff)format("woff")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(./nunito-latin-800-normal-D-J0wlBY.woff)format("woff")}:root{--bg:#fff6ea;--bg-2:#ffeedb;--dots:#ffb27a2e;--panel:#fff;--panel-2:#fff4e6;--hover:#ffe9d2;--line:#f2ddc6;--line-soft:#f7eadb;--line-strong:#e7c7a3;--text:#4a3426;--muted:#9b8271;--accent:#ff8a3d;--accent-2:#ffc15e;--accent-deep:#e5641a;--accent-soft:#ffe4cc;--accent-ink:#4a2008;--accent-edge:#d9672a;--pos:#22a066;--pos-soft:#dcf5e8;--neg:#ec4f66;--neg-soft:#ffe1e6;--blue:#3a86e0;--blue-soft:#e2efff;--purple:#9b6ff0;--series-1:#ff7a2e;--series-2:#3a86e0;--series-3:#22a066;--series-4:#ec4f66;--series-5:#9b6ff0;--series-6:#c99700;--series-7:#1aa6b7;--series-8:#a8664a;--warn-bg:#fff1d4;--warn-text:#94570a;--warn-line:#ffd38a;--ok-bg:#e0f6ea;--ok-text:#17744a;--ok-line:#a6e1c2;--track:#f7e7d6;--inset:#fffaf4;--code-bg:#fbeedf;--img-bg:#2b2019;--backdrop:#4a342659;--mush-line:#8a4b22;--radius-xs:6px;--radius-sm:10px;--radius:16px;--radius-lg:22px;--radius-pill:999px;--space-1:4px;--space-2:6px;--space-3:8px;--space-4:12px;--space-5:16px;--shadow-sm:0 1px 0 var(--line), 0 2px 6px #a0643214;--shadow:0 2px 0 var(--line), 0 6px 16px #a064321c;--shadow-pop:0 14px 44px #5a321440;--btn-edge:0 2px 0 var(--line-strong);--font:"Nunito", "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans SC", system-ui, sans-serif;--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-fast:.12s;--dur:.22s;--radius-card:var(--radius);font-family:var(--font);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#211a22;--bg-2:#1b151d;--dots:#ff9a5214;--panel:#2c2230;--panel-2:#362a3a;--hover:#403244;--line:#45374a;--line-soft:#3a2e3e;--line-strong:#5a4760;--text:#f7ebe0;--muted:#b6a1a7;--accent:#ff9a52;--accent-2:#ffc66e;--accent-deep:#ffb072;--accent-soft:#4a3122;--accent-ink:#3a1a05;--accent-edge:#b9551d;--pos:#5fd8a0;--pos-soft:#1b3a2c;--neg:#ff7d8f;--neg-soft:#46222b;--blue:#7ab6ff;--blue-soft:#1f2e46;--purple:#c3a2ff;--series-1:#ff9a52;--series-2:#7ab6ff;--series-3:#5fd8a0;--series-4:#ff7d8f;--series-5:#c3a2ff;--series-6:#ffd166;--series-7:#5fd3e0;--series-8:#d9a183;--warn-bg:#3e2e18;--warn-text:#ffd08a;--warn-line:#6b4b1d;--ok-bg:#17362a;--ok-text:#9ff0bf;--ok-line:#1f5c38;--track:#1c151e;--inset:#241c27;--code-bg:#1c151e;--img-bg:#120d13;--backdrop:#0b070cb3;--shadow-sm:0 1px 0 #1a131c, 0 2px 6px #0003;--shadow:0 2px 0 #1a131c, 0 6px 16px #00000047;--shadow-pop:0 14px 44px #0009;--btn-edge:0 2px 0 #1a131c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--text);margin:0}body{-webkit-font-smoothing:antialiased;font-size:13px;font-weight:500;line-height:1.4}button,input,select,textarea{font:inherit;color:inherit}h2{margin:0;font-size:16px;font-weight:800}::selection{background:var(--accent-soft)}.app{background:radial-gradient(circle at 2px 2px, var(--dots) 1.5px, transparent 2px) 0 0 / 18px 18px, linear-gradient(180deg, var(--bg), var(--bg-2));flex-direction:column;height:100%;display:flex;overflow:hidden}.top{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-1);display:flex}.brand{align-items:center;gap:var(--space-3);letter-spacing:.2px;color:var(--accent-deep);white-space:nowrap;font-size:15px;font-weight:800;display:flex}.brand-mark{display:inline-flex;position:relative}.brand-mark .mushroom{transition:transform var(--dur) var(--ease-bounce)}.brand:hover .brand-mark .mushroom{transform:rotate(-10deg)scale(1.08)}.dot{background:var(--muted);width:9px;height:9px;box-shadow:0 0 0 2px var(--panel);border-radius:50%}.brand-mark .dot{position:absolute;bottom:0;right:-2px}.dot.on{background:var(--pos)}.dot.paused{background:var(--accent-2)}.top-actions{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.tabs{margin:var(--space-1) var(--space-3) 0;background:var(--panel-2);border:1.5px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:3px;padding:4px;display:grid}.tabs button{text-overflow:ellipsis;border-radius:var(--radius-pill);min-width:0;box-shadow:none;color:var(--muted);white-space:nowrap;background:0 0;border:0;padding:5px 6px;font-size:12.5px;font-weight:700;overflow:hidden}.tabs button:hover:not(:disabled){background:var(--hover);color:var(--text);border-color:#0000}.tabs button.active{background:var(--panel);color:var(--accent-deep);box-shadow:var(--shadow-sm)}.content{min-width:0;padding:var(--space-4) var(--space-4) var(--space-5);flex:1;overflow:hidden auto}.tab-pane,.sub-pane{animation:pane-in .26s var(--ease-out) both}@keyframes pane-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.stack{gap:var(--space-4);flex-direction:column;display:flex}.card{background:var(--panel);border:1.5px solid var(--line);border-radius:var(--radius);padding:var(--space-4);gap:var(--space-2);box-shadow:var(--shadow);overflow-wrap:break-word;flex-direction:column;min-width:0;display:flex}.card.hero{background:linear-gradient(150deg, var(--panel) 30%, var(--accent-soft));border-color:var(--line-strong);position:relative;overflow:hidden}.card.hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffc15e55,#0000 70%);border-radius:50%;width:96px;height:96px;position:absolute;top:-28px;right:-28px}.card.hero .big{color:var(--accent-deep)}.label{color:var(--muted);font-size:12px;font-weight:700}.big{font-variant-numeric:tabular-nums;letter-spacing:-.3px;font-size:30px;font-weight:800;line-height:1.1}.map-name{font-size:20px}.sub{color:var(--muted)}.val{font-variant-numeric:tabular-nums;font-weight:800}.small{font-size:12px}.tiny{margin:0;font-size:11px}.muted{color:var(--muted)}.pos{color:var(--pos)}.neg{color:var(--neg)}.right{text-align:right}.grow{flex:1}.row{align-items:center;display:flex}.row.gap,.gap{gap:var(--space-3)}.row-between{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.grid3{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.grid3.tight{gap:var(--space-1)}.tile{background:var(--panel);border:1.5px solid var(--line);border-radius:var(--radius);gap:var(--space-1);min-width:0;box-shadow:var(--shadow-sm);flex-direction:column;padding:10px;display:flex}.tile .val{font-size:16px}.progress{border-radius:var(--radius-pill);background:var(--track);height:10px;margin-top:var(--space-2);overflow:hidden;box-shadow:inset 0 1px 2px #00000012}.progress div{border-radius:inherit;height:100%;transition:width .4s var(--ease-out);background:repeating-linear-gradient(-45deg, #ffffff38 0 6px, transparent 6px 12px), linear-gradient(90deg, var(--accent-2), var(--accent))}.bars{align-items:flex-end;gap:2px;height:56px;display:flex}.bars div{background:linear-gradient(180deg, var(--accent-2), var(--accent));border-radius:4px 4px 1px 1px;flex:1;min-height:1px}button{background:var(--panel);border:1.5px solid var(--line-strong);border-radius:var(--radius-pill);cursor:pointer;box-shadow:var(--btn-edge);transition:transform var(--dur-fast) var(--ease-bounce), box-shadow var(--dur-fast), background-color var(--dur-fast), border-color var(--dur-fast), color var(--dur-fast);padding:5px 13px;font-weight:700}button:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}button:active:not(:disabled){box-shadow:none;transform:translateY(1px)scale(.97)}button:focus-visible{outline:2.5px solid var(--accent);outline-offset:2px}button:disabled{opacity:.45;cursor:default;box-shadow:none}button.primary{background:linear-gradient(180deg, var(--accent-2), var(--accent));color:var(--accent-ink);border-color:var(--accent-edge);box-shadow:0 2px 0 var(--accent-edge);font-weight:800}button.primary:hover:not(:disabled){border-color:var(--accent-edge);filter:saturate(1.1)}button.danger{color:var(--neg)}button.danger:hover:not(:disabled){border-color:var(--neg);background:var(--neg-soft)}button.ghost{box-shadow:none;color:var(--muted);background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){background:var(--hover);color:var(--text);border-color:#0000}button.link{color:var(--blue);text-align:left;box-shadow:none;border-radius:var(--radius-xs);background:0 0;border:0;padding:0}button.link:hover:not(:disabled){text-decoration:underline;transform:none}button.small{padding:3px 10px;font-size:12px}.chip{border-radius:var(--radius-pill);padding:3px 10px;font-size:12px}.chip.active{background:linear-gradient(180deg, var(--accent-2), var(--accent));color:var(--accent-ink);border-color:var(--accent-edge);box-shadow:0 2px 0 var(--accent-edge)}.chip.warn{background:var(--warn-bg);color:var(--warn-text);border-color:var(--warn-line);min-width:26px;padding:3px 8px}input,select,textarea{background:var(--inset);border:1.5px solid var(--line);border-radius:var(--radius-sm);min-width:0;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);padding:5px 9px}input:hover,select:hover,textarea:hover{border-color:var(--line-strong)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input[type=number]{width:80px}input[type=checkbox],input[type=radio]{width:auto;accent-color:var(--accent);box-shadow:none}input[type=checkbox]{width:15px;height:15px}input[type=range]{accent-color:var(--accent);box-shadow:none;background:0 0;border:0;padding:0}textarea.notes{resize:vertical;min-height:54px}.segmented{grid-template-columns:repeat(var(--seg-n), 1fr);background:var(--panel-2);border:1.5px solid var(--line);border-radius:var(--radius-pill);padding:3px;display:grid;position:relative}.segmented-thumb{width:calc((100% - 6px) / var(--seg-n));border-radius:var(--radius-pill);background:var(--panel);box-shadow:var(--shadow-sm);transform:translateX(calc(var(--seg-i) * 100%));transition:transform .32s var(--ease-bounce);position:absolute;top:3px;bottom:3px;left:3px}.segmented button{z-index:1;box-shadow:none;color:var(--muted);background:0 0;border:0;padding:5px 8px;font-weight:800;position:relative}.segmented button:hover:not(:disabled){color:var(--text);transform:none}.segmented button.on{color:var(--accent-deep)}.banner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin:var(--space-3) var(--space-4) 0;cursor:pointer;font-weight:600}.content .banner{margin:0}.banner.warn{background:var(--warn-bg);color:var(--warn-text);border:1.5px solid var(--warn-line)}.banner.ok{background:var(--ok-bg);color:var(--ok-text);border:1.5px solid var(--ok-line);cursor:default}.banner.row-between{cursor:default;flex-wrap:wrap}.empty{align-items:center;gap:var(--space-4);padding:36px var(--space-4);text-align:center;flex-direction:column;display:flex}.empty p{margin:0}.tab-loading{justify-content:center;align-items:center;gap:var(--space-3);color:var(--muted);padding:40px 0;font-weight:700;display:flex}.tab-loading.compact{padding:var(--space-4) 0}.bouncy-dots{gap:5px;display:inline-flex}.bouncy-dots i{background:var(--accent);width:8px;height:8px;animation:dot-bounce .9s var(--ease-out) infinite;border-radius:50%}.bouncy-dots i:nth-child(2){background:var(--accent-2);animation-delay:.12s}.bouncy-dots i:nth-child(3){background:var(--pos);animation-delay:.24s}@keyframes dot-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-7px)}}.tab-error{text-align:center;align-items:center;gap:var(--space-3);border-color:var(--warn-line)}.tab-error p{margin:0}.tab-error.compact{text-align:left;flex-flow:wrap;justify-content:center}.tab-error-face{animation:2.4s ease-in-out infinite wobble}.tab-error-msg{overflow-wrap:anywhere;max-width:100%;font-size:11px}@keyframes wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}.mushroom{color:var(--text);flex:none}.mushroom.bob,.mushroom.float{animation:2.6s ease-in-out infinite bob}.mushroom.hop{animation:hop .7s var(--ease-bounce) both}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes hop{0%{transform:translateY(0)scale(1)}35%{transform:translateY(-10px)scale(1.06,.94)}70%{transform:translateY(0)scale(1.05,.95)}to{transform:none}}.modal-backdrop{z-index:50;padding:var(--space-5);background:var(--backdrop);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in var(--dur) var(--ease-out) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{width:min(460px,100%);max-height:calc(100vh - 32px);padding:var(--space-5);background:var(--panel);border:2px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop);animation:pop-in .36s var(--ease-bounce) both;flex-direction:column;gap:10px;display:flex;position:relative;overflow-y:auto}.modal p{margin:0}.modal-head{align-items:center;gap:var(--space-4);padding-right:24px;display:flex}.modal-head h2{color:var(--accent-deep)}.modal-x{width:28px;height:28px;box-shadow:none;background:var(--panel-2);color:var(--muted);border-color:#0000;padding:0;font-size:18px;line-height:1;position:absolute;top:10px;right:10px}.modal-actions{margin-top:var(--space-1);flex-wrap:wrap}.big-btn{align-self:center;padding:9px 18px;font-size:14px}.connect-sources{max-height:46vh}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:translateY(10px)scale(.94)}to{opacity:1;transform:none}}.startup-bar{border-radius:var(--radius-pill);background:var(--track);height:12px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #00000014}.startup-bar div{border-radius:inherit;transform-origin:0;height:100%;transition:transform .5s var(--ease-out);background:repeating-linear-gradient(-45deg, #ffffff40 0 6px, transparent 6px 12px), linear-gradient(90deg, var(--accent-2), var(--accent))}.startup-bar:after{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);width:40%;animation:1.6s ease-in-out infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(260%)}}.steps{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.step{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);transition:background-color var(--dur);grid-template-columns:24px 1fr;align-items:start;gap:10px;font-weight:700;display:grid}.step.run{background:var(--panel-2)}.step.wait{color:var(--muted)}.step-body{flex-direction:column;gap:3px;min-width:0;display:flex}.step-detail{overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-weight:500;display:-webkit-box;overflow:hidden}.step-icon{color:#fff;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:800;display:inline-flex}.step.wait .step-icon{border:2px dashed var(--line-strong)}.step.run .step-icon{border:3px solid var(--accent-soft);border-top-color:var(--accent);animation:.8s linear infinite spin}.step.ok .step-icon{background:var(--pos);animation:pop-in .3s var(--ease-bounce) both}.step.warn .step-icon{background:var(--accent-2);color:var(--accent-ink)}.step.fail .step-icon{background:var(--neg)}@keyframes spin{to{transform:rotate(360deg)}}.hud-chips{gap:var(--space-1);flex-wrap:wrap;display:flex}.hud-chip{border-radius:var(--radius-pill);background:var(--panel-2);border:1px solid var(--line);color:var(--muted);padding:1px 8px;font-size:11px;font-weight:700}.hud-chip.ok{background:var(--pos-soft);border-color:var(--ok-line);color:var(--ok-text)}.ranking{margin:var(--space-1) 0 0;gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.ranking li{padding:var(--space-3) 10px;border-radius:var(--radius-sm);background:var(--panel-2);cursor:pointer;transition:border-color var(--dur-fast), transform var(--dur-fast) var(--ease-bounce);border:1.5px solid #0000}.ranking li:hover{border-color:var(--line-strong)}.ranking li.here{border-color:var(--accent)}.rank{width:20px;color:var(--accent-deep);font-weight:800;display:inline-block}.editor{gap:var(--space-2);margin-top:var(--space-3);cursor:default;flex-direction:column;display:flex}.boss-name{font-weight:800}input.ch{width:52px}.timer{align-items:center;gap:var(--space-3);padding:var(--space-2) 0 0;grid-template-columns:56px 1fr auto 22px;display:grid}.ch-tag{color:var(--muted);font-size:12px}.timer-bar{background:var(--track);border-radius:var(--radius-pill);height:8px;position:relative;overflow:hidden}.timer-bar .fill{background:var(--line-strong);border-radius:inherit;height:100%}.timer-bar .window{background:var(--accent-soft);position:absolute;top:0;bottom:0;right:0}.timer.maybe .fill{background:var(--accent)}.timer.up .fill{background:var(--pos)}.timer-text{font-variant-numeric:tabular-nums;font-size:12px}.timer.maybe .timer-text{color:var(--accent-deep)}.timer.up .timer-text{color:var(--pos);font-weight:800}button.x{width:22px;height:22px;box-shadow:none;border-radius:50%;padding:0}.form label{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.seg{gap:var(--space-1);flex-wrap:wrap;justify-content:flex-end;display:flex}.seg button{box-shadow:none;padding:3px 10px}.seg button.active{background:linear-gradient(180deg, var(--accent-2), var(--accent));color:var(--accent-ink);border-color:var(--accent-edge)}.statcell{flex-direction:column;align-items:center;gap:2px;display:flex}.statcell input{text-align:center;width:46px}.plan{gap:var(--space-1);grid-template-columns:repeat(3,1fr);display:grid}.dist{flex-direction:column;gap:3px;display:flex}.drow{align-items:center;gap:var(--space-2);grid-template-columns:52px 1fr 60px;font-size:12px;display:grid}.drow .num{text-align:right;font-variant-numeric:tabular-nums}.dbar{background:var(--track);border-radius:var(--radius-pill);height:10px;overflow:hidden}.dbar div{background:var(--line-strong);border-radius:inherit;height:100%}.drow.hit .dbar div{background:var(--pos)}.drow.boom .dbar div{background:var(--neg)}.sources{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px;padding:2px 2px 4px;display:grid;overflow-y:auto}.source{gap:var(--space-1);padding:var(--space-2);text-align:left;border-radius:var(--radius);flex-direction:column;display:flex}.source.active{border-color:var(--accent);background:var(--accent-soft)}.source img,.source .noimg{aspect-ratio:16/9;object-fit:contain;background:var(--img-bg);border-radius:var(--radius-sm);width:100%}.source span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.regions{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.swatch{width:10px;height:10px;margin-right:var(--space-2);border-radius:3px;flex:none;display:inline-block}.preview{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.prow{align-items:center;gap:var(--space-3);display:flex}.prow img{border-radius:var(--radius-xs);background:#fff;max-width:150px;max-height:40px}.prow .prepped{flex-direction:column;align-items:center;gap:2px;margin:0;display:flex}code{background:var(--code-bg);border-radius:var(--radius-xs);padding:1px 5px}.calibrator{background:var(--img-bg);z-index:10;flex-direction:column;display:flex;position:fixed;inset:0}.cal-bar{align-items:center;gap:var(--space-3);border-bottom:1.5px solid var(--line);background:var(--panel);flex-wrap:wrap;padding:10px;display:flex}.cal-bar button.active{background:var(--accent-soft);border-width:2px}.cal-stage{flex:1;justify-content:center;align-items:center;padding:10px;display:flex;overflow:hidden}.cal-stage canvas{cursor:crosshair;touch-action:none}.form label.row{justify-content:flex-start}.title-prep input[type=range]{flex:1;max-width:55%}.title-prep .tp-value{font-variant-numeric:tabular-nums;margin-left:var(--space-1);font-weight:800}.tp-preview{gap:var(--space-2);flex-direction:column;display:flex}.tp-preview figure{flex-direction:column;gap:2px;margin:0;display:flex}.tp-preview img{object-fit:contain;object-position:left;border-radius:var(--radius-xs);max-width:100%;height:36px;image-rendering:pixelated;background:#fff}.hdr-preview{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.hdr-preview figure{flex-direction:column;gap:2px;min-width:0;margin:0;display:flex}.hdr-preview img{border-radius:var(--radius-xs);width:100%;height:auto}.hdr-preview .dim img{opacity:.55}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}button:hover:not(:disabled),button:active:not(:disabled){transform:none}.startup-bar:after{display:none}}
