/**
 * 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-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{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.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}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}:root{color:#e5edf7;background:#070b15;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:linear-gradient(180deg,#030712,#07111f 58%,#030712),#070b15}button,input{font:inherit}button{cursor:pointer}.phone-screen{position:relative;width:100%;height:100dvh;min-height:0;display:grid;grid-template-rows:58px minmax(0,1fr) auto;overflow:hidden;background:linear-gradient(rgba(125,249,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(122,162,247,.03) 1px,transparent 1px),#080d18;background-size:100% 19px,23px 100%,100% 100%;color:#dbeafe}.titlebar{z-index:3;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:0 14px;border-bottom:1px solid rgba(94,234,212,.18);background:#060a14f5;box-shadow:0 8px 22px #02061742}.nusto-mark{position:relative;width:30px;height:30px;border:1px solid rgba(94,234,212,.74);border-radius:8px;background:#5eead40b;box-shadow:inset 0 0 16px #5eead41f,0 0 18px #5eead417}.nusto-mark:before,.nusto-mark:after,.nusto-mark span:before,.nusto-mark span:after{position:absolute;width:7px;height:7px;content:"";border-color:#5eead4}.nusto-mark:before{top:5px;left:5px;border-top:1px solid;border-left:1px solid}.nusto-mark:after{right:5px;bottom:5px;border-right:1px solid;border-bottom:1px solid}.nusto-mark span:before{top:5px;right:5px;border-top:1px solid;border-right:1px solid}.nusto-mark span:after{left:5px;bottom:5px;border-left:1px solid;border-bottom:1px solid}.nusto-mark.large{width:42px;height:42px;border-radius:10px}.title-copy{min-width:0}.title-copy strong{display:block;color:#f8fafc;font-size:16px;line-height:1.05;letter-spacing:0}.title-copy span{display:block;min-width:0;margin-top:4px;overflow:hidden;color:#a9b1d6d6;font-size:11px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.session-count{width:34px;height:30px;border:1px solid rgba(94,234,212,.36);border-radius:8px;color:#5eead4;background:#5eead411;font-weight:700}.session-count:focus-visible,.session-sheet button:focus-visible,.inputbar input:focus-visible,.inputbar button:focus-visible,.action-pad button:focus-visible,.action-row button:focus-visible,.primary-action:focus-visible,.quiet-action:focus-visible{outline:2px solid rgba(125,249,255,.92);outline-offset:2px}.terminal-surface{min-height:0;overflow:auto;padding:13px 14px 14px;color:#c0caf5;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.48;scrollbar-color:rgba(94,234,212,.42) transparent}.terminal-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px;color:#a9b1d6b8;font-size:11px}.terminal-meta span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-lines{display:grid;width:max-content;min-width:100%;gap:1px}.terminal-viewport{width:max-content;min-width:100%;min-height:calc(100% - 24px);overflow:hidden}.terminal-viewport .xterm{padding-bottom:8px}.terminal-viewport .xterm-viewport,.terminal-viewport .xterm-screen{background:transparent}.terminal-line{min-height:18px;margin:0;-moz-tab-size:2;tab-size:2;white-space:pre;overflow-wrap:normal}.terminal-line-dim{color:#a9b1d6bf}.terminal-line-hot{color:#7dcfff}.terminal-line-warn{color:#f7768e}.session-sheet{position:absolute;z-index:5;right:10px;bottom:154px;left:10px;display:grid;gap:8px;max-height:min(54dvh,420px);overflow-y:auto;padding:10px;border:1px solid rgba(94,234,212,.2);border-radius:12px 12px 10px 10px;background:#060a14fa;box-shadow:0 24px 70px #0000008f}.sheet-handle{justify-self:center;width:34px;height:3px;margin-bottom:2px;border-radius:999px;background:#a9b1d661}.session-sheet button{min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid rgba(169,177,214,.16);border-radius:8px;background:#0f172ac7;color:#f8fafc;text-align:left}.session-sheet button.active{border-color:#5eead46b;background:#5eead417}.session-sheet button span{min-width:0}.session-sheet strong,.session-sheet small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-sheet strong{color:#f8fafc;font-size:13px;line-height:1.2}.session-sheet small{margin-top:3px;color:#a9b1d6c7;font-size:11px}.session-sheet em{min-width:max-content;color:#7dcfff;font-size:11px;font-style:normal}.session-sheet .waiting-tag{padding:4px 7px;border:1px solid rgba(255,199,119,.34);border-radius:999px;color:#ffc777;background:#ffc7771a}.control-deck{z-index:4;display:grid;grid-template-columns:108px minmax(0,1fr);grid-template-areas:"pad row" "input input";gap:8px;align-items:stretch;padding:8px 12px 12px;border-top:1px solid rgba(94,234,212,.16);background:#060a14fa}.action-pad{grid-area:pad;display:grid;grid-template-columns:repeat(3,32px);grid-template-rows:repeat(2,32px);gap:4px;justify-content:start}.action-pad button,.action-row button{min-width:0;border:1px solid rgba(94,234,212,.24);border-radius:8px;background:#0f172adb;color:#dbeafe;font-weight:800}.action-pad button:first-child{grid-column:2;grid-row:1}.action-pad button:nth-child(2){grid-column:1;grid-row:2}.action-pad button:nth-child(3){grid-column:2;grid-row:2}.action-pad button:nth-child(4){grid-column:3;grid-row:2}.action-row{grid-area:row;display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);gap:6px}.action-row button{min-height:32px;padding:0 8px;font-size:12px;line-height:1}.action-row .enter-action{border-color:#5eead48a;color:#021617;background:#5eead4}.action-row .stop-action{border-color:#f7768e57;color:#fecdd3;background:#7f1d1d5c}.inputbar{grid-area:input;display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:9px;align-items:center}.inputbar input{width:100%;height:42px;min-width:0;border:1px solid rgba(169,177,214,.24);border-radius:9px;background:#020617e0;color:#e2e8f0e6;padding:0 12px}.inputbar input::placeholder{color:#a9b1d694}.inputbar button{height:42px;border:0;border-radius:9px;background:#5eead4;color:#021617;font-size:13px;font-weight:800}.pair-screen{width:100%;min-height:100dvh;display:grid;align-items:center;padding:22px;background:linear-gradient(rgba(125,249,255,.035) 1px,transparent 1px),#080d18;background-size:100% 20px,100% 100%;color:#dbeafe}.pair-panel{display:grid;gap:13px;max-width:390px;margin:0 auto}.eyebrow{margin:0;color:#5eead4;font-size:11px;font-weight:800;letter-spacing:0}.pair-panel h1{margin:0;color:#f8fafc;font-size:28px;line-height:1.05;letter-spacing:0}.pair-copy{margin:0;color:#a9b1d6db;font-size:14px;line-height:1.5}.pair-code{width:max-content;max-width:100%;padding:8px 10px;border:1px solid rgba(94,234,212,.22);border-radius:8px;color:#7dcfff;background:#0f172ac7;overflow-wrap:anywhere}.primary-action,.quiet-action{min-height:44px;border-radius:9px;font-weight:800}.primary-action{border:0;color:#021617;background:#5eead4}.quiet-action{border:1px solid rgba(169,177,214,.2);color:#dbeafe;background:#0f172ab8}.pair-panel small{color:#a9b1d6b8}.status-ring{width:42px;height:42px;border:2px solid rgba(94,234,212,.16);border-top-color:#5eead4;border-radius:50%}@media (min-width: 720px){body{min-height:100dvh;display:grid;place-items:center;padding:16px}.phone-screen,.pair-screen{width:min(100vw - 32px,390px,calc((100dvh - 32px) * 390 / 844));height:min(844px,calc(100dvh - 32px),calc((100vw - 32px) * 844 / 390));aspect-ratio:390 / 844;border:1px solid rgba(94,234,212,.18);border-radius:22px;box-shadow:0 30px 90px #0000006b}.pair-screen{align-items:center}}
