:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body,#root{overscroll-behavior:none;-webkit-user-select:none;user-select:none;touch-action:none;background:#0b0d12;width:100%;height:100%;margin:0;overflow:hidden}#root{position:relative}button{font:inherit;cursor:pointer}.command-bar{left:50%;bottom:max(16px, env(safe-area-inset-bottom));z-index:10;gap:8px;width:min(680px,100% - 24px);display:flex;position:absolute;transform:translate(-50%)}.command-bar input{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#e8ebf0;background:#12151cd1;border:1px solid #ffffff1f;border-radius:12px;outline:none;flex:1;padding:12px 16px;font-size:16px}.command-bar input:focus{border-color:#78aaff99}.command-bar button{color:#07111f;background:#78aaffe6;border:1px solid #ffffff1f;border-radius:12px;padding:0 18px;font-size:15px;font-weight:600}.hud{top:max(12px, env(safe-area-inset-top));z-index:10;color:#e8ebf0b3;pointer-events:none;white-space:pre-line;max-width:46%;font-size:12px;line-height:1.5;position:absolute;left:12px}.hud code{color:#9ec1ff}.log{z-index:10;color:#e8ebf08c;pointer-events:none;white-space:pre-wrap;width:min(320px,45%);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;position:absolute;bottom:84px;left:12px}.touch-zone{z-index:5;touch-action:none;width:50%;position:absolute;top:0;bottom:0}.touch-zone.left{left:0}.touch-zone.right{right:0}.stick-base{z-index:6;pointer-events:none;background:#ffffff0f;border:2px solid #ffffff40;border-radius:50%;width:112px;height:112px;margin:-56px 0 0 -56px;position:fixed}.stick-nub{background:#9ec1ff8c;border-radius:50%;width:48px;height:48px;position:absolute;transform:translate(-50%,-50%)}.touch-buttons{z-index:10;flex-direction:column;gap:12px;display:flex;position:absolute;bottom:96px;right:18px}.touch-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#e8ebf0;touch-action:none;background:#12151cb3;border:1px solid #fff3;border-radius:50%;width:64px;height:64px;font-size:18px}.touch-btn.jump{background:#78aaff59;width:76px;height:76px;font-size:26px}.topbar{top:max(12px, env(safe-area-inset-top));z-index:11;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:absolute;right:12px}.badge{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#e8ebf0d9;background:#12151cd1;border:1px solid #ffffff24;border-radius:10px;padding:8px 14px;font-size:13px}.badge.online{color:#7affc1;border-color:#7affc180}.isle-buttons{gap:6px;display:flex}.isle-buttons button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#e8ebf0d9;background:#12151cd1;border:1px solid #ffffff24;border-radius:10px;padding:7px 12px;font-size:12px}.panel-toggle{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#9ec1ff;background:#12151cd1;border:1px solid #ffffff24;border-radius:10px;padding:8px 14px;font-size:13px}.script-panel{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#e8ebf0;background:#0e1016eb;border:1px solid #ffffff24;border-radius:14px;flex-direction:column;gap:10px;width:min(420px,100vw - 24px);max-height:min(70vh,640px);padding:12px;font-size:13px;display:flex;overflow-y:auto}.panel-head{justify-content:space-between;align-items:center;display:flex}.panel-head button{color:#e8ebf099;background:0 0;border:none;font-size:14px}.rule-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rule{background:#ffffff0d;border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.rule.errored{background:#ff7a901a}.rule-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.rule-name code{color:#e8ebf073;margin-left:4px}.rule-error{color:#ff7a90;text-overflow:ellipsis;white-space:nowrap;max-width:40%;font-size:11px;overflow:hidden}.rule button{color:#e8ebf0b3;background:0 0;border:1px solid #ffffff26;border-radius:6px;padding:3px 8px;font-size:11px}.rule-empty{color:#e8ebf066;padding:4px 8px}.presets{gap:6px;display:flex}.presets button{color:#9ec1ff;background:#7aa2ff1f;border:1px solid #9ec1ff4d;border-radius:8px;padding:5px 10px;font-size:12px}.script-panel input,.script-panel textarea{color:#e8ebf0;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px;outline:none;width:100%;padding:9px 12px;font-size:13px}.script-panel textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.5}.script-panel .register{color:#07111f;background:#78aaffe6;border:none;border-radius:10px;padding:9px;font-weight:600}
