/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}:root{--bg: #ffffff;--bg-shell: #354a5f;--bg-page: #f5f6f7;--bg-panel: #ffffff;--bg-subtle: #fafafa;--bg-hover: #ebf5fe;--bg-selected: #e3f0fd;--border: #d9d9d9;--border-strong: #b3b3b3;--text: #32363a;--text-secondary: #6a6d70;--text-inverse: #ffffff;--accent: #0a6ed1;--accent-hover: #085caf;--success: #107e3e;--warning: #e9730c;--error: #bb0000;--neutral: #6a6d70;--font: "72", "72full", -apple-system, "Segoe UI", Arial, Helvetica, sans-serif;--font-mono: "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--radius: 4px;--shadow: 0 1px 2px rgba(0, 0, 0, .08)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg-page);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.45}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-weight:600;margin:0 0 8px}h1{font-size:18px}h2{font-size:15px}h3{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.shell-bar{background:var(--bg-shell);color:var(--text-inverse);display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:44px;flex:0 0 auto}.shell-bar .title{font-size:15px;font-weight:600}.shell-bar .title a{color:var(--text-inverse)}.shell-bar .meta{font-size:12px;color:#cdd6df;display:flex;gap:16px;align-items:center}.app{display:flex;flex-direction:column;height:100%}.content{flex:1 1 auto;overflow:auto;padding:16px}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px}.panel-header{padding:10px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.panel-body{padding:14px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--border);vertical-align:middle}th{background:var(--bg-subtle);color:var(--text-secondary);font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}tbody tr:hover{background:var(--bg-hover);cursor:pointer}button{font-family:inherit;font-size:13px;border:1px solid var(--border-strong);background:var(--bg);color:var(--text);padding:6px 14px;border-radius:var(--radius);cursor:pointer}button:hover{background:var(--bg-subtle)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--text-inverse)}button.primary:hover{background:var(--accent-hover)}button.danger{background:var(--bg);border-color:var(--error);color:var(--error)}button.danger:hover{background:#fdf0f0}button.ghost{border-color:transparent;background:transparent;color:var(--accent)}.btn-row{display:flex;gap:8px;flex-wrap:wrap}.play-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:50%;border:1px solid var(--accent);background:var(--bg);color:var(--accent);line-height:0;transition:background .12s ease,color .12s ease,transform .12s ease}.play-btn:hover{background:var(--accent);color:var(--text-inverse);transform:scale(1.08)}.play-btn:active{transform:scale(.96)}.play-btn svg{width:11px;height:11px;fill:currentColor;display:block;margin-left:1px}.play-btn.live{animation:play-pulse 2s ease-out infinite}@keyframes play-pulse{0%{box-shadow:0 0 #0a6ed166}70%{box-shadow:0 0 0 7px #0a6ed100}to{box-shadow:0 0 #0a6ed100}}.col-action{width:44px;min-width:44px;white-space:nowrap;text-align:center;padding-left:4px;padding-right:8px}.col-action-placeholder{display:inline-block;width:28px;height:28px;visibility:hidden}.badge{display:inline-block;font-size:11px;font-weight:600;padding:1px 8px;border-radius:10px;border:1px solid currentColor;white-space:nowrap}.badge.open{color:var(--accent)}.badge.pending{color:var(--warning)}.badge.done{color:var(--success)}.prio-high{color:var(--error);font-weight:600}.prio-medium{color:var(--warning)}.prio-low{color:var(--text-secondary)}label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:4px}input[type=text],input[type=search],textarea,select{width:100%;font-family:inherit;font-size:13px;padding:6px 10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg);color:var(--text)}textarea{font-family:var(--font-mono);resize:vertical}.field{margin-bottom:12px}.toolbar{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;margin-bottom:12px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.dev-menu{position:relative}.dev-menu-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:20;min-width:160px;display:flex;flex-direction:column;padding:4px;gap:2px;background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:0 6px 20px #0000001f}.dev-menu-dropdown button{border-color:transparent;background:transparent;text-align:left;width:100%}.dev-menu-dropdown button:hover{background:var(--bg-subtle)}.dev-menu-notice{position:absolute;top:calc(100% + 4px);right:0;z-index:20;min-width:260px;max-width:360px;margin-bottom:0}.muted{color:var(--text-secondary)}.mono{font-family:var(--font-mono)}.row{display:flex;gap:16px}.col{flex:1 1 0;min-width:0}.kv{display:grid;grid-template-columns:160px 1fr;gap:6px 12px;font-size:13px}.kv dt{color:var(--text-secondary)}.kv dd{margin:0}.workspace-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:16px;align-items:start}@media (max-width: 1100px){.workspace-grid{grid-template-columns:1fr}}.notice{padding:8px 12px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-subtle);font-size:13px;margin-bottom:8px}.notice.error{border-color:var(--error);background:#fdf0f0;color:var(--error)}.notice.warning{border-color:var(--warning);background:#fef7ef}.notice.success{border-color:var(--success);background:#f1faf4}.likelihood{display:flex;align-items:center;gap:8px;margin-top:6px}.likelihood-bar{flex:1;height:6px;border-radius:999px;background:var(--bg-selected);overflow:hidden}.likelihood-bar>span{display:block;height:100%;background:var(--accent);border-radius:999px}.likelihood-pct{font-size:12px;font-weight:600;color:var(--accent);min-width:34px;text-align:right}.comment{font-size:12px;color:var(--text-secondary);background:var(--bg-subtle);border-left:2px solid var(--accent);padding:2px 8px;margin-top:4px;border-radius:0 var(--radius) var(--radius) 0}.markdown{font-size:13px;line-height:1.5;color:var(--text)}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown h1,.markdown h2,.markdown h3{margin:12px 0 6px;line-height:1.3}.markdown h1{font-size:18px}.markdown h2{font-size:16px}.markdown h3{font-size:14px}.markdown p{margin:6px 0}.markdown ul,.markdown ol{margin:6px 0;padding-left:20px}.markdown code{font-family:var(--font-mono);font-size:12px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:3px;padding:1px 4px}.markdown pre{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;overflow:auto}.markdown pre code{border:0;padding:0;background:none}.markdown blockquote{margin:6px 0;padding-left:12px;border-left:3px solid var(--border-strong);color:var(--text-secondary)}.markdown table{border-collapse:collapse;margin:8px 0;font-size:12px}.markdown th,.markdown td{border:1px solid var(--border);padding:4px 8px;text-align:left}.markdown a{color:var(--accent)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#32363a73;display:flex;align-items:flex-start;justify-content:center;padding:48px 16px;overflow:auto;z-index:1000}.modal{width:100%;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #0000002e}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0}.modal-close{font-size:22px;line-height:1;padding:0 6px}.modal-body{padding:16px;max-height:calc(100vh - 160px);overflow:auto}.status-select{width:auto;min-width:96px;font-size:11px;font-weight:600;padding:1px 8px;border-radius:10px;cursor:pointer}.status-select.open{color:var(--accent);border-color:var(--accent)}.status-select.pending{color:var(--warning);border-color:var(--warning)}.status-select.done{color:var(--success);border-color:var(--success)}.voice-fab-root{position:fixed;right:24px;bottom:24px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.voice-fab{width:56px;height:56px;border-radius:50%;border:none;color:var(--text-inverse);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px #00000040;transition:transform .12s ease,box-shadow .12s ease,background .2s ease;padding:0}.voice-fab:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0000004d}.voice-fab:active{transform:translateY(0)}.voice-fab-popover{width:240px;background:var(--bg-panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0000002e;padding:12px}.voice-fab-popover-row{display:flex;align-items:center;gap:8px}.voice-fab-dot{width:10px;height:10px;border-radius:50%;flex:none}@keyframes voicePulse{0%,to{box-shadow:0 4px 14px #00000040,0 0 #107e3e80}50%{box-shadow:0 4px 14px #00000040,0 0 0 10px #107e3e00}}
