@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-cyrillic-ext-700-normal-BDQ-w_bc.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-700-normal-CtgKGIh5.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-cyrillic-700-normal-Bp80XfeI.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-700-normal-O_YjL27c.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-vietnamese-700-normal-apsD3J7v.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-700-normal-Bs14ezHR.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-latin-ext-700-normal-Dhimjc7-.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-700-normal-Cwsjk1Jb.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-latin-700-normal-7sUh57Bg.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-700-normal-CNHXzs6v.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0d0a;--bg-elevated:#10140f;--bg-inset:#080a08;--bg-hover:#161c15;--border:#202822;--border-strong:#35402f;--text:#d8f0dc;--muted:#7f9585;--muted-dim:#4c5c50;--accent:#46e08a;--accent-strong:#7bf0ab;--accent-ink:#052012;--accent-dim:#46e08a24;--accent-glow:#46e08a73;--ok:var(--accent);--ok-dim:var(--accent-dim);--pending:#e8a33d;--pending-strong:#f3b256;--pending-dim:#e8a33d24;--danger:#f2555b;--danger-dim:#f2555b24;--lost:#c48bfa;--lost-dim:#c48bfa24;--radius-sm:2px;--radius:3px;--radius-lg:4px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--font-ui:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;font-family:var(--font-ui);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{height:100%}html{overflow-x:hidden}body{background:var(--bg);color:var(--text);margin:0;font-size:15px;line-height:1.5;position:relative}body:before{content:"";z-index:0;pointer-events:none;background-image:linear-gradient(#d8f0dc09 1px,#0000 1px),linear-gradient(90deg,#d8f0dc09 1px,#0000 1px),radial-gradient(1100px 560px at 50% -12%,#46e08a14,#0000 65%);background-size:56px 56px,56px 56px,100% 100%;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 88%);mask-image:linear-gradient(#000,#0000 88%)}#root{z-index:1;position:relative}h1,h2,h3{font-family:var(--font-ui);letter-spacing:-.01em;margin:0;font-weight:600}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.link-button{border-radius:var(--radius-sm);border:1px solid var(--accent);color:var(--accent-ink);background:var(--accent);align-items:center;gap:.35rem;padding:.45rem .9rem;font-size:.9rem;font-weight:600;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .1s;display:inline-flex}.link-button:hover{background:var(--accent-strong);border-color:var(--accent-strong);box-shadow:0 0 22px -4px var(--accent-glow);text-decoration:none}.link-button:active{transform:translateY(1px)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}button{font:inherit;color:var(--text);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:.45rem .85rem;font-weight:500;transition:border-color .12s,background-color .12s,color .12s}button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-strong)}button:disabled{opacity:.4;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}button.primary:before{content:"❯";opacity:.7;margin-right:.45em}button.primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);box-shadow:0 0 22px -4px var(--accent-glow)}button.primary:active:not(:disabled){transform:translateY(1px)}button.danger{border-color:var(--border);color:var(--danger);background:0 0}button.danger:hover:not(:disabled){background:var(--danger-dim);border-color:var(--danger)}button.ghost{background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border)}input,select{font:inherit;color:var(--text);background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem .65rem;transition:border-color .12s}input:hover,select:hover{border-color:var(--border-strong)}input:focus,select:focus{border-color:var(--accent);outline:none}input::placeholder{color:var(--muted-dim)}label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:500;display:flex}label.checkbox{text-transform:none;letter-spacing:normal;color:var(--text);flex-direction:row;align-items:center;gap:.45rem;font-size:.875rem}label:has(input[type=radio]){text-transform:none;letter-spacing:normal;color:var(--text);flex-direction:row;align-items:center;gap:.45rem;font-size:.875rem}.loading{height:100%;color:var(--muted);font-family:var(--font-mono);justify-content:center;align-items:center;font-size:.9rem;display:flex}.muted{color:var(--muted);font-size:.85rem}.error{color:var(--danger);background:var(--danger-dim);border-radius:var(--radius-sm);border:1px solid #f2555b59;margin:0;padding:.5rem .7rem;font-size:.85rem}.mono{font-family:var(--font-mono)}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted-dim);margin:0 0 var(--space-2);font-size:.7rem;font-weight:600}.brand{font-family:var(--font-mono);letter-spacing:-.02em;color:var(--text);align-items:baseline;gap:.15rem;font-size:clamp(1.2rem,1.02rem + .9vw,1.5rem);font-weight:700;display:inline-flex}.brand__bracket{color:var(--muted-dim);font-weight:500}.brand__cursor{background:var(--accent);width:.5em;height:1em;box-shadow:0 0 10px 1px var(--accent-glow);vertical-align:text-bottom;margin-left:.15em;animation:1.1s step-end infinite brand-blink;display:inline-block}@keyframes brand-blink{0%,49%{opacity:1}50%,to{opacity:0}}.status-pill{font-family:var(--font-mono);color:var(--muted);align-items:center;gap:.4rem;font-size:.75rem;display:inline-flex}.ws-dot{border-radius:50%;flex:none;width:.5rem;height:.5rem;display:inline-block;position:relative}.ws-dot--on{background:var(--ok);box-shadow:0 0 0 3px var(--ok-dim)}.ws-dot--on:after{content:"";background:var(--ok);border-radius:50%;animation:1.8s cubic-bezier(0,0,.2,1) infinite ws-ping;position:absolute;inset:0}.ws-dot--off{background:var(--muted-dim)}@keyframes ws-ping{0%{opacity:.7;transform:scale(1)}75%,to{opacity:0;transform:scale(2.6)}}.page{max-width:1320px;padding-top:var(--space-5);padding-left:max(1.25rem, env(safe-area-inset-left));padding-right:max(1.25rem, env(safe-area-inset-right));padding-bottom:max(3rem, env(safe-area-inset-bottom));margin:0 auto}.page__header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page__header-actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.page__back{font-family:var(--font-mono);color:var(--muted);margin-bottom:var(--space-4);align-items:center;gap:.3rem;font-size:.8rem;display:inline-flex}.page__back:hover{color:var(--accent)}.page>h2{margin-bottom:var(--space-4);align-items:center;gap:.7em;font-size:clamp(.95rem,.87rem + .35vw,1.05rem);display:flex}.page>h2:after{content:"";background-image:repeating-linear-gradient(90deg, var(--border-strong) 0 6px, transparent 6px 10px);flex:auto;height:1px}.page>h1{margin-bottom:var(--space-5);font-size:clamp(1.25rem,1.05rem + .9vw,1.5rem)}@media (width<=420px){.page{padding-top:var(--space-4)}.page__header{margin-bottom:var(--space-5)}.card{padding:var(--space-4)}}.alert-banner{background:var(--danger-dim);border-radius:var(--radius);margin-bottom:var(--space-5);cursor:pointer;color:#ffd7d7;border:1px solid #f2555b66;padding:.7rem 1rem;font-size:.9rem}.dashboard-grid{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));align-items:stretch;display:grid}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);min-width:0;transition:border-color .15s;position:relative}.card:before,.card:after{content:"";pointer-events:none;opacity:0;width:10px;height:10px;transition:opacity .15s;position:absolute}.card:before{border-top:2px solid var(--accent);border-left:2px solid var(--accent);top:-1px;left:-1px}.card:after{border-bottom:2px solid var(--accent);border-right:2px solid var(--accent);bottom:-1px;right:-1px}.card:hover:before,.card:hover:after{opacity:1}.card h2{margin-bottom:var(--space-3);align-items:center;gap:.6em;font-size:.95rem;font-weight:600;display:flex}.card h2:after{content:"";background-image:repeating-linear-gradient(90deg, var(--border) 0 6px, transparent 6px 10px);flex:auto;height:1px}.stats{gap:.35rem var(--space-4);grid-template-columns:auto 1fr;margin:0;display:grid}.stats dt{color:var(--muted);font-size:.82rem}.stats dd{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin:0;font-size:.88rem}.usage-window{margin:.75rem 0}.usage-window__label{color:var(--muted);margin-bottom:.3rem;font-size:.8rem;font-weight:500}.usage-window__bar{background:var(--bg-inset);border:1px solid var(--border);border-radius:999px;height:.4rem;overflow:hidden}.usage-window__fill{background:linear-gradient(90deg, var(--accent), var(--accent-strong));height:100%;box-shadow:0 0 8px 0 var(--accent-glow);border-radius:999px;transition:width .6s cubic-bezier(.4,0,.2,1)}.usage-window__meta{color:var(--muted);font-size:.78rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:.25rem;display:flex}.usage-window--reset .usage-window__note{color:var(--muted-dim);font-size:.8rem;font-style:italic}.gauge-row{gap:var(--space-6);margin:var(--space-2) 0 var(--space-5);flex-wrap:wrap;display:flex}.gauge{flex-direction:column;align-items:center;gap:.4rem;display:flex}.gauge__ring-wrap{width:64px;height:64px;position:relative}.gauge__track{stroke:var(--bg-inset)}.gauge__value{stroke:var(--accent);transition:stroke-dashoffset .7s cubic-bezier(.4,0,.2,1),stroke .2s}.gauge__value--danger{stroke:var(--danger)}.gauge__pct{font-family:var(--font-mono);color:var(--text);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:flex;position:absolute;inset:0}.gauge__label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;font-weight:500}.instance-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.instance-card{--state-color:var(--border-strong);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3) var(--space-4);align-items:center;gap:var(--space-3);box-shadow:inset 3px 0 0 0 var(--state-color);grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.instance-card:hover{border-color:var(--border-strong);box-shadow:inset 3px 0 0 0 var(--state-color), 0 14px 32px -18px #000000b3;transform:translateY(-1px)}.instance-card--running{--state-color:var(--ok)}.instance-card--creating{--state-color:var(--pending)}.instance-card--lost{--state-color:var(--lost)}.instance-card--error{--state-color:var(--danger)}.instance-card--stopped,.instance-card--archived{--state-color:var(--border-strong)}@media (width<=760px){.instance-card{grid-template-columns:1fr}}.instance-card__main{flex-wrap:wrap;align-items:center;gap:.55rem;min-width:0;display:flex}.instance-card__name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.3rem;min-width:0;font-weight:600;display:inline-flex;overflow:hidden}.instance-card__name:before{content:"▸";color:var(--accent);font-size:.8em}.instance-card__name:hover{color:var(--accent);text-decoration:none}.instance-card__meta{min-width:0;color:var(--muted);flex-direction:column;gap:.15rem;font-size:.85rem;display:flex}.instance-card__repo{font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.instance-card__stats{font-family:var(--font-mono);color:var(--muted-dim);font-size:.78rem}.instance-card__actions{flex:none;justify-content:flex-end;gap:.4rem;display:flex}@media (width<=760px){.instance-card__actions{justify-content:flex-start}}.instance-card__actions button{padding:.35rem .7rem;font-size:.82rem}.badge{font-family:var(--font-mono);letter-spacing:.01em;white-space:nowrap;color:var(--state-ink,var(--muted));align-items:baseline;font-size:.72rem;font-weight:600;display:inline-flex}.badge:before{content:"[";color:var(--muted-dim)}.badge:after{content:"]";color:var(--muted-dim)}.badge--running{--state-ink:var(--ok)}.badge--stopped{--state-ink:var(--muted)}.badge--creating{--state-ink:var(--pending);animation:1.1s ease-in-out infinite pending-pulse}@keyframes pending-pulse{0%,to{opacity:1}50%{opacity:.45}}.badge--lost{--state-ink:var(--lost)}.badge--error{--state-ink:var(--danger)}.badge--archived,.badge--mode{--state-ink:var(--muted-dim)}.badge--mode:before,.badge--mode:after{content:none}.login-page{justify-content:center;gap:var(--space-6);max-width:400px;min-height:100%;padding:2rem max(1.25rem, env(safe-area-inset-right)) 2rem max(1.25rem, env(safe-area-inset-left));flex-direction:column;margin:0 auto;display:flex}.login-page__header{text-align:center}.login-page .brand{margin-bottom:var(--space-2);justify-content:center;font-size:clamp(1.7rem,1.3rem + 2.2vw,2.1rem)}.login-page__tagline{font-family:var(--font-mono);color:var(--muted-dim);align-items:center;gap:.4em;font-size:.8rem;display:inline-flex}.login-page__tagline:before{content:"$";color:var(--accent)}.login-page__tagline-text{white-space:nowrap;width:24ch;animation:1s steps(24,end) .3s backwards type-in;display:inline-block;overflow:hidden}@keyframes type-in{0%{width:0}}.login-page__panel{gap:var(--space-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-5);flex-direction:column;display:flex;position:relative;box-shadow:0 28px 70px -32px #000000b3}.login-page__panel:before,.login-page__panel:after{content:"";pointer-events:none;width:18px;height:18px;position:absolute}.login-page__panel:before{border-top:2px solid var(--accent);border-left:2px solid var(--accent);border-top-left-radius:var(--radius-lg);top:-1px;left:-1px}.login-page__panel:after{border-bottom:2px solid var(--accent);border-right:2px solid var(--accent);border-bottom-right-radius:var(--radius-lg);bottom:-1px;right:-1px}.login-page__panel>button{padding:.7rem 1rem;font-size:.95rem}.login-page details{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-inset);flex-direction:column;gap:.7rem;padding:.7rem .9rem;display:flex}.login-page summary{cursor:pointer;color:var(--muted);font-size:.85rem;font-weight:500}.login-page summary:hover{color:var(--text)}.form{gap:var(--space-5);flex-direction:column;max-width:520px;display:flex}.form-section{flex-direction:column;gap:.35rem;display:flex}.repo-picker{gap:var(--space-3);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);background:var(--bg-elevated);flex-direction:column;display:flex}.segmented{flex-wrap:wrap;gap:.4rem;display:flex}.segmented__option{padding:.35rem .75rem;font-size:.82rem}.segmented__option--active{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-dim);box-shadow:0 0 14px -6px var(--accent-glow)}.repo-picker__buttons{flex-wrap:wrap;gap:.5rem;display:flex}.repo-picker__existing,.repo-picker__new{gap:var(--space-3);flex-direction:column;display:flex}.repo-list{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-inset);flex-direction:column;max-height:15rem;display:flex;overflow-y:auto}.repo-list__row{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--muted);font-family:var(--font-mono);text-align:left;background:0 0;border-radius:0;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;display:flex}.repo-list__row:last-child{border-bottom:none}.repo-list__row:hover{background:var(--bg-hover);color:var(--text);border-color:var(--border)}.repo-list__row--active{background:var(--accent-dim);color:var(--accent-strong)}.repo-list__marker{color:var(--accent);flex:none;width:.9em}.repo-list__empty{color:var(--muted-dim);padding:.6rem .75rem;font-size:.85rem}.terminal-page{background:var(--bg-inset);flex-direction:column;height:100dvh;display:flex}.terminal-page__bar{padding:max(.55rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) .55rem max(1rem, env(safe-area-inset-left));background:var(--bg-elevated);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.terminal-page__back{border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--muted);align-items:center;gap:.3rem;padding:.35rem .75rem;font-size:.8rem;display:inline-flex}.terminal-page__back:hover{border-color:var(--border-strong);color:var(--text);text-decoration:none}.terminal-page__status{color:var(--muted);font-size:.78rem;font-family:var(--font-mono);align-items:center;gap:.4rem;display:inline-flex}.terminal-page__status:before{content:"";background:var(--muted-dim);border-radius:50%;flex:none;width:.45rem;height:.45rem}.terminal-page__status--live:before{background:var(--ok);box-shadow:0 0 0 3px var(--ok-dim)}.terminal-page__status--down:before{background:var(--danger)}.terminal-page__state{justify-content:center;align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;flex:1;padding:1.5rem;display:flex}.terminal-page__state-icon{width:2.75rem;height:2.75rem;font-family:var(--font-mono);border:1px solid var(--border-strong);color:var(--muted);border-radius:50%;justify-content:center;align-items:center;font-size:1.3rem;display:flex}.terminal-page__state--lost .terminal-page__state-icon{color:var(--lost);background:var(--lost-dim);border-color:#b28dfa66}.terminal-page__state--error .terminal-page__state-icon,.terminal-page__state--notfound .terminal-page__state-icon,.terminal-page__state--fetch-error .terminal-page__state-icon{color:var(--danger);background:var(--danger-dim);border-color:#f2555b66}.terminal-page__state--creating .terminal-page__state-icon{color:var(--pending);background:var(--pending-dim);border-color:#e8a33d66;animation:1.4s ease-in-out infinite terminal-page-pulse}@keyframes terminal-page-pulse{0%,to{opacity:1}50%{opacity:.45}}.terminal-page__state p{max-width:32rem;color:var(--text);margin:0;font-size:.95rem}.terminal-page__state-back{border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--accent);padding:.6rem 1.3rem;font-weight:600;text-decoration:none;display:inline-block}.terminal-page__state-back:hover{background:var(--accent-dim);text-decoration:none}.terminal-page__mode-toggle{font-size:.78rem;font-family:var(--font-mono);padding:.3rem .7rem}.terminal-page__term{background:var(--bg-inset);flex:1;min-height:0;padding:.5rem;overflow:hidden}.keybar{padding:.45rem max(.5rem, env(safe-area-inset-right)) max(.45rem, env(safe-area-inset-bottom)) max(.5rem, env(safe-area-inset-left));background:var(--bg-elevated);border-top:1px solid var(--border);-webkit-overflow-scrolling:touch;gap:.3rem;display:flex;overflow-x:auto}.keybar button{font-size:.82rem;font-family:var(--font-mono);white-space:nowrap;background:var(--bg-inset);flex:none;padding:.5rem .7rem}.keybar button.keybar__key--active{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-dim)}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.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{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.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;pointer-events:none;position:absolute;top:0;right:0}.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;z-index:11;background:0 0;transition:opacity .1s linear}.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{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}
