.xterm{cursor:text;position:relative;-moz-user-select:none;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;-moz-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{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;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:#11140f;--panel:#e7dfc8;--ink:#151711;--muted:#66624f;--line:rgba(21,23,17,0.2);--green:#b6ff4d;--orange:#ff8b38;--steel:#879286}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% 8%,rgba(182,255,77,.18),transparent 28rem),linear-gradient(135deg,#11140f,#25291f 48%,#121712);color:var(--panel);font-family:Georgia,Times New Roman,serif}a{color:inherit;text-decoration:none}.shell{min-height:100vh;padding:28px}.topbar{align-items:center;border:1px solid rgba(231,223,200,.22);display:flex;justify-content:space-between;margin-bottom:28px;padding:16px 18px}.brand{font-size:21px;letter-spacing:.08em}.brand,.nav{text-transform:uppercase}.nav{display:flex;gap:16px;color:rgba(231,223,200,.72);font-family:Courier New,monospace;font-size:13px}.hero{display:grid;grid-template-columns:1.3fr .7fr;grid-gap:20px;gap:20px;margin-bottom:20px}.card{background:var(--panel);color:var(--ink);border:1px solid rgba(231,223,200,.4);box-shadow:10px 10px 0 rgba(0,0,0,.35);padding:24px}.card.dark{background:rgba(10,12,9,.7);color:var(--panel)}.eyebrow{color:var(--orange);font-family:Courier New,monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase}h1{font-size:clamp(42px,7vw,92px);line-height:.9;margin:18px 0;max-width:900px}h2{font-size:28px;margin:0 0 18px}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.robot-row{border-top:1px solid var(--line);display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr auto;padding:18px 0}.robot-row:last-child{border-bottom:1px solid var(--line)}.status{align-self:start;border:1px solid var(--ink);border-radius:999px;font-family:Courier New,monospace;font-size:12px;padding:6px 10px;text-transform:uppercase}.status.online{background:var(--green)}.muted{color:var(--muted)}.inline-code{display:inline-block;font-family:Courier New,monospace;font-size:11px;margin-top:8px;opacity:.76}.rollout-card{margin-top:20px}.deployment-list{display:grid}.deployment-row{border-top:1px solid var(--line);display:grid;grid-gap:16px;gap:16px;grid-template-columns:1fr minmax(220px,.5fr);padding:16px 0}.deployment-row:last-child{border-bottom:1px solid var(--line)}.deployment-meta{color:var(--muted);display:grid;font-family:Courier New,monospace;font-size:11px;grid-gap:6px;gap:6px;justify-items:end;overflow-wrap:anywhere}.tabs{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.tab-card{border:1px dashed rgba(21,23,17,.3);min-height:140px;padding:16px}.terminal-card{background:#070806;border:1px solid rgba(182,255,77,.38);box-shadow:inset 0 0 0 1px rgba(231,223,200,.08);color:#dfffb0;font-family:Courier New,monospace;margin-top:16px}.terminal-header{align-items:center;border-bottom:1px solid rgba(182,255,77,.2);display:flex;justify-content:space-between;padding:10px 12px;text-transform:uppercase}.terminal-mount{min-height:420px;padding:12px}.terminal-mount .xterm{height:100%}.terminal-hint{border-top:1px solid rgba(182,255,77,.2);color:rgba(223,255,176,.68);font-size:12px;padding:10px 12px}.logs-card{border:1px solid rgba(21,23,17,.18);margin-top:16px}.logs-toolbar{align-items:center;border-bottom:1px solid rgba(21,23,17,.16);display:grid;grid-gap:12px;gap:12px;grid-template-columns:auto 1fr auto;padding:12px}.logs-toolbar input{background:rgba(255,255,255,.36);border:1px solid rgba(21,23,17,.22);color:var(--ink);font-family:Courier New,monospace;padding:9px 10px}.logs-toolbar button{background:var(--ink);border:0;color:var(--panel);cursor:pointer;font-family:Courier New,monospace;padding:10px 12px;text-transform:uppercase}.logs-list{display:grid;max-height:360px;overflow:auto}.log-row{align-items:center;border-bottom:1px solid rgba(21,23,17,.12);display:grid;font-family:Courier New,monospace;font-size:12px;grid-gap:10px;gap:10px;grid-template-columns:70px 90px 120px 1fr;padding:10px 12px}.log-level{border:1px solid rgba(21,23,17,.28);border-radius:999px;padding:4px 7px;text-align:center;text-transform:uppercase}.log-level.info{background:rgba(182,255,77,.48)}.log-level.error{background:rgba(255,91,56,.5)}.log-source,.log-time{color:var(--muted)}.log-message{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camera-card{background:#070806;border:1px solid rgba(21,23,17,.18);margin-top:16px}.camera-toolbar{align-items:center;border-bottom:1px solid rgba(231,223,200,.14);display:flex;justify-content:space-between;padding:12px}.camera-frame{display:block;image-rendering:auto;width:100%}.camera-empty{color:rgba(231,223,200,.68);font-family:Courier New,monospace;min-height:260px;padding:24px}.rosbags-card{border:1px solid rgba(21,23,17,.18);display:grid;grid-gap:18px;gap:18px;margin-top:16px;padding:16px}.rosbags-form{align-items:end;display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(180px,1fr)) auto}.rosbags-form label{display:grid;font-family:Courier New,monospace;font-size:12px;grid-gap:6px;gap:6px;text-transform:uppercase}.rosbags-form input{background:rgba(255,255,255,.36);border:1px solid rgba(21,23,17,.22);color:var(--ink);font-family:Courier New,monospace;padding:10px}.rosbags-coverage a,.rosbags-form button{background:var(--ink);border:0;color:var(--panel);cursor:pointer;font-family:Courier New,monospace;padding:11px 13px;text-transform:uppercase}.rosbags-coverage{align-items:center;border:1px solid rgba(21,23,17,.2);display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr auto auto;padding:14px}.rosbags-coverage.complete{background:rgba(182,255,77,.34)}.rosbags-coverage.partial{background:rgba(255,139,56,.24)}.rosbags-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.rosbags-grid h3{font-size:18px;margin:0 0 10px}.rosbags-row{border-top:1px solid rgba(21,23,17,.14);display:grid;font-family:Courier New,monospace;font-size:12px;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,1fr);padding:10px 0}.rosbags-row.gap{color:#8c2d12}.rosbags-error{color:#8c2d12;font-family:Courier New,monospace}@media (max-width:760px){.rosbags-coverage,.rosbags-form,.rosbags-grid{grid-template-columns:1fr}}.provisioning-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0}.provisioning-form{display:grid;grid-gap:14px;gap:14px}.provisioning-form label{display:grid;font-family:Courier New,monospace;font-size:12px;grid-gap:6px;gap:6px;text-transform:uppercase}.provisioning-form input,.provisioning-form select{background:rgba(255,255,255,.36);border:1px solid rgba(21,23,17,.22);color:var(--ink);font-family:Courier New,monospace;padding:10px}.provisioning-form button{background:var(--ink);border:0;color:var(--panel);cursor:pointer;font-family:Courier New,monospace;padding:11px 13px;text-transform:uppercase}.provisioning-form button:disabled{cursor:not-allowed;opacity:.45}.provisioning-error{color:#8c2d12;font-family:Courier New,monospace;margin-top:20px}.key-reveal{border-left:8px solid var(--green);margin-bottom:20px}.key-reveal strong{display:block;font-family:Courier New,monospace;font-size:clamp(16px,2vw,24px);margin:14px 0 8px;overflow-wrap:anywhere}.provisioning-ledger{margin-top:20px}.link-button{background:transparent;border:0;color:var(--ink);cursor:pointer;font-family:Courier New,monospace;font-size:11px;padding:0;text-decoration:underline;text-transform:uppercase}.link-button.danger{color:#8c2d12}.admin-hero{background:linear-gradient(135deg,rgba(182,255,77,.3),rgba(231,223,200,.96)),var(--panel)}.admin-create{min-height:100%}.portal-ribbon{margin-bottom:20px}.org-portal .hero{grid-template-columns:1fr .55fr}.portal-chooser{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-card{display:block;min-height:420px}.request-access{max-width:760px}@media (max-width:900px){.provisioning-grid{grid-template-columns:1fr}}@media (max-width:760px){.shell{padding:14px}.hero{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column;gap:12px}.deployment-row{grid-template-columns:1fr}.deployment-meta{justify-items:start}}