*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden;background:#02030a;color:#cfd6e4;font:13px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}#app{position:fixed;top:0;right:0;bottom:0;left:0}#app canvas{display:block}#labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.body-label{pointer-events:auto;cursor:pointer;font-size:11px;letter-spacing:.06em;text-shadow:0 0 4px #000,0 0 8px #000;padding:2px 4px;-webkit-user-select:none;user-select:none;white-space:nowrap}.body-label.moon{font-size:10px;opacity:.85}.body-label:hover{text-decoration:underline}.hud{position:fixed;background:#080c16d1;border:1px solid rgba(120,140,180,.22);border-radius:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10}.panel-title{font-weight:600;font-size:14px;color:#eef2fa;margin-bottom:6px}#sidebar{left:12px;top:12px;bottom:72px;width:180px;padding:10px;overflow-y:auto;scrollbar-width:thin}#sidebar h3{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#7d89a3;margin:10px 0 4px}.body-btn{display:flex;align-items:center;gap:7px;width:100%;padding:4px 8px;border:0;border-radius:6px;background:transparent;color:#cfd6e4;font:inherit;text-align:left;cursor:pointer}.body-btn:hover{background:#788cb426}.body-btn.active{background:#5a82dc4d;color:#fff}.body-btn.moon{padding-left:24px;font-size:12px;color:#a8b1c4}.body-btn.overview{font-weight:600}.body-btn i{width:8px;height:8px;border-radius:50%;flex:none}.body-btn.moon i{width:6px;height:6px}#timebar{left:50%;transform:translate(-50%);bottom:12px;display:flex;align-items:center;gap:8px;padding:8px 12px;white-space:nowrap}#timebar>button,#t-cal-btn{border:1px solid rgba(120,140,180,.3);background:#2837558c;color:#dfe6f2;border-radius:6px;padding:4px 9px;font:inherit;cursor:pointer;min-width:34px;height:28px;display:inline-flex;align-items:center;justify-content:center}#timebar button svg{display:block;flex:none}#timebar>button:hover,#t-cal-btn:hover{background:#465f91a6}#t-rate{min-width:90px;text-align:center;color:#9fd0ff}#t-rate.reversed{color:#ffb08a}#t-date{font-variant-numeric:tabular-nums;color:#eef2fa}#t-pick{position:relative;display:flex;align-items:center;gap:6px}#t-picker{background:#2837558c;border:1px solid rgba(120,140,180,.3);border-radius:6px;color:#dfe6f2;padding:4px 8px;font:inherit;font-variant-numeric:tabular-nums;width:150px}#t-picker.invalid{border-color:#e06c5a;color:#ffb08a}#t-cal{position:absolute;bottom:calc(100% + 14px);right:0;width:248px;padding:10px;background:#080c16f2;border:1px solid rgba(120,140,180,.22);border-radius:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.cal-head{display:flex;gap:4px;margin-bottom:8px}#cal-month{flex:1;min-width:0}#cal-year{width:62px}#cal-month,#cal-year,#cal-time{background:#2837558c;border:1px solid rgba(120,140,180,.3);border-radius:6px;color:#dfe6f2;font:inherit;font-size:12px;padding:3px 4px;color-scheme:dark}#cal-prev,#cal-next{border:1px solid rgba(120,140,180,.3);background:#2837558c;color:#dfe6f2;border-radius:6px;width:26px;font:inherit;cursor:pointer}#cal-prev:hover,#cal-next:hover{background:#465f91a6}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:22px;gap:2px}.cal-dow{font-size:10px;color:#7d89a3;text-align:center;line-height:22px}.cal-day{border:0;border-radius:5px;background:transparent;color:#cfd6e4;font:inherit;font-size:12px;padding:0;cursor:pointer;text-align:center}.cal-day:hover{background:#788cb433}.cal-day.selected{background:#5a82dc73;color:#fff}.cal-time{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;color:#8d99b3;font-size:12px}#right-column{position:fixed;top:12px;right:12px;width:260px;display:flex;flex-direction:column;gap:10px;z-index:10}#scale-panel,#info-panel{position:static;padding:10px 14px}#info-panel:empty{display:none}.scale-row{display:flex;align-items:center;gap:8px}.scale-row input{flex:1;accent-color:#6a97e8}#s-value{min-width:74px;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}#scale-panel button{margin-top:8px;width:100%;border:1px solid rgba(120,140,180,.3);background:#2837558c;color:#dfe6f2;border-radius:6px;padding:5px 0;font:inherit;cursor:pointer}#scale-panel button:hover{background:#465f91a6}.info-row{display:flex;justify-content:space-between;gap:10px;padding:2.5px 0;border-top:1px solid rgba(120,140,180,.12)}.info-row span{color:#8d99b3}.info-row b{font-weight:500;color:#eef2fa;text-align:right;white-space:nowrap}#credit{position:fixed;right:14px;bottom:14px;font-size:10px;color:#5d6778;z-index:5}#credit a{color:#7d89a3}@media(max-width:900px){#sidebar{width:150px}#right-column{width:210px}}
