@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,400;0,500;0,700;1,400&display=swap");:root{--bg:#0a0c10;--bg-grad-1:#0c0f15;--bg-grad-2:#090b0f;--panel:#0e1014;--panel-2:#13151b;--inset:#0a0c0f;--border:#1d2029;--border-bright:#2a2e3a;--dots:rgba(232,233,236,0.05);--fg:#e8e9ec;--fg-dim:#9aa0ab;--fg-faint:#7d8492;--green:#5ef38c;--green-dim:#36c46a;--green-glow:rgba(94,243,140,0.16);--cyan:#54d6ff;--amber:#ffc14d;--red:#ff6b6b;--violet:#a98bff;--radius:0px;--radius-sm:0px;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace;--maxw:1140px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background-color:var(--bg);background-image:radial-gradient(var(--dots) 1px,transparent 1px),radial-gradient(1100px 600px at 80% -10%,rgba(94,243,140,.04),transparent 60%),linear-gradient(180deg,var(--bg-grad-1),var(--bg-grad-2));background-size:22px 22px,auto,auto;background-position:-1px -1px,0 0,0 0;background-attachment:fixed;color:var(--fg);font-family:var(--mono);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh}a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--green-glow);color:var(--green)}:focus-visible{outline:2px solid var(--green-dim);outline-offset:2px}.inputrow input:focus-visible{outline:2px solid var(--green-dim);outline-offset:4px}.shell{max-width:var(--maxw);margin:0 auto;padding:22px clamp(16px,4vw,40px) 56px;height:100dvh;min-height:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--border);flex-wrap:wrap}.brand{font-weight:700;letter-spacing:.02em;color:var(--fg)}.tagline{color:var(--fg-faint);font-size:12.5px;margin-left:auto}.steptrack{display:flex;align-items:center;gap:12px;padding:18px 0 6px}.steptrack .count{color:var(--fg-dim);font-size:12.5px;white-space:nowrap}.steptrack .count b{color:var(--green);font-weight:700}.bar{flex:1 1;height:5px;border-radius:0;background:var(--inset);overflow:hidden;border:1px solid var(--border)}.bar>i{display:block;height:100%;background:var(--green-dim);transition:width .5s cubic-bezier(.22,1,.36,1)}.layout{display:grid;grid-template-columns:1fr 320px;grid-gap:22px;gap:22px;margin-top:22px;flex:1 1;min-height:0;align-items:stretch}.layout>*{min-width:0}.primary{display:flex;flex-direction:column;min-height:0}@media (max-width:880px){.layout{grid-template-columns:1fr}.aside{order:1;position:static}.shell{height:auto;min-height:100dvh}.repl{flex:none;min-height:clamp(360px,58dvh,520px)}.btn,.copy,.option,.ostab{min-height:44px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);white-space:nowrap;border:0}.repl,.sr-only{overflow:hidden}.repl{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,var(--panel),var(--inset));box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 24px 60px -30px rgba(0,0,0,.8);display:flex;flex-direction:column;flex:1 1;min-height:0}.repl-bar{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.015)}.repl-title{margin-left:8px;color:var(--fg-faint);font-size:12px}.repl-title b{color:var(--fg-dim);font-weight:500}.scrollback{padding:18px 18px 8px;flex:1 1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-bright) transparent;display:flex;flex-direction:column;gap:9px}.scrollback::-webkit-scrollbar{width:8px}.scrollback::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:0}.line{display:flex;gap:12px;align-items:flex-start;white-space:pre-wrap;word-break:break-word;padding:4px;border-radius:0;animation:lineIn .26s cubic-bezier(.22,1,.36,1) both}.line .gutter{flex:0 0 auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.9}.line .body{flex:1 1;min-width:0}.line.fastic{animation-name:msgInLeft}.line.echo,.line.user{animation-name:msgInRight}.line.err,.line.ok{animation-name:msgPop}.line.fastic .gutter{color:var(--green)}.line.fastic .body{color:var(--fg)}.line.user{align-self:flex-end;max-width:82%;padding:6px 12px;background:rgba(84,214,255,.06);border:1px solid rgba(84,214,255,.18)}.line.user .gutter{color:var(--cyan)}.line.user .body{color:var(--fg);flex:0 1 auto}.line.echo{align-self:flex-end;max-width:82%;padding:6px 12px;background:rgba(84,214,255,.06);border:1px solid rgba(84,214,255,.18)}.line.echo .gutter{color:var(--cyan)}.line.echo .body{color:var(--fg);flex:0 1 auto}.line.ok{background:rgba(94,243,140,.06);border-left:2px solid var(--green);border-radius:0;padding:8px 12px}.line.ok,.line.ok .gutter{color:var(--green)}.line.err{background:rgba(255,107,107,.06);border-left:2px solid var(--red);border-radius:0;padding:8px 12px}.line.err,.line.err .gutter{color:var(--red)}.line.sys .gutter{color:var(--violet)}.line.sys .body{color:var(--fg-dim)}.typing{display:inline-block;width:8px;height:1.05em;vertical-align:-2px;margin-left:2px;background:var(--green);animation:blink 1s steps(1) infinite}.promptzone{border-top:1px solid var(--border);background:rgba(255,255,255,.012);padding:14px 16px}.inputrow{display:flex;align-items:center;gap:10px}.inputrow .ps{color:var(--green);flex:0 0 auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.inputrow input{flex:1 1;background:transparent;border:none;outline:none;color:var(--fg);font:inherit;caret-color:var(--green);letter-spacing:.02em}.inputrow input::placeholder{color:var(--fg-faint)}.inputrow .ghost{flex:0 0 auto;color:var(--fg-faint);font-size:11.5px}.sendbtn{flex:0 0 auto;display:grid;place-items:center;width:34px;height:30px;padding:0;font:inherit;cursor:pointer;border:1px solid rgba(94,243,140,.4);background:rgba(94,243,140,.08);color:var(--green);border-radius:var(--radius-sm);transition:background .18s,border-color .18s,transform .1s,box-shadow .18s}.sendbtn .ico{display:block;font-size:13px;line-height:1;transition:transform .18s cubic-bezier(.22,1,.36,1)}.sendbtn:hover:not(:disabled){background:rgba(94,243,140,.16);border-color:var(--green);box-shadow:0 0 0 3px var(--green-glow)}.sendbtn:hover:not(:disabled) .ico{transform:translateX(2px)}.sendbtn:active:not(:disabled){transform:translateY(1px)}.sendbtn:disabled{opacity:.45;cursor:not-allowed;color:var(--fg-faint);border-color:var(--border-bright);background:transparent}.hint{margin-top:9px;color:var(--fg-faint);font-size:11.5px;letter-spacing:.02em}.hint kbd{font:inherit;color:var(--fg-dim);background:var(--panel-2);border:1px solid var(--border-bright);border-radius:0;padding:0 5px;margin:0 1px}.hint .link,.tokenlink{color:var(--cyan)}.tokenlink{display:inline-flex;align-items:center;gap:6px;padding:2px 9px 2px 7px;border:1px solid rgba(84,214,255,.28);border-radius:var(--radius-sm);background:rgba(84,214,255,.06);font-size:12px;text-decoration:none;vertical-align:middle;transition:background .18s,border-color .18s,box-shadow .18s}.tokenlink:hover{text-decoration:none;background:rgba(84,214,255,.12);border-color:var(--cyan);box-shadow:0 0 0 3px rgba(84,214,255,.12)}.tokenlink .keyglyph{display:inline-block;font-size:12px;line-height:1;transform-origin:center;animation:keyPulse 1.8s ease-in-out infinite}.tokenlink:hover .keyglyph{animation-play-state:paused}.options{display:flex;flex-direction:column;gap:3px;margin-bottom:4px}.option{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--panel-2);color:var(--fg-dim);text-align:left;font:inherit;transition:background .15s,color .15s,border-color .15s}.option .marker{color:var(--fg-faint);width:1.2em}.option .num{color:var(--fg-faint);font-size:12px}.option:hover{color:var(--fg);background:var(--panel);border-color:var(--border-bright)}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.actions .hint{margin-top:0}.btn{font:inherit;cursor:pointer;border-radius:var(--radius-sm);padding:9px 16px;border:1px solid var(--border-bright);background:var(--panel-2);color:var(--fg);transition:transform .12s,border-color .2s,background .2s,box-shadow .2s}.btn:hover{border-color:var(--green-dim)}.btn:active{transform:translateY(1px)}.btn.primary{border-color:rgba(94,243,140,.4);background:rgba(94,243,140,.08);color:var(--green)}.btn.ghost{background:transparent;color:var(--fg-dim)}.btn:disabled{opacity:.5;cursor:not-allowed}.aside{position:-webkit-sticky;position:sticky;top:22px;display:flex;flex-direction:column;gap:16px}.card{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,var(--panel-2),var(--panel));overflow:hidden}.card-head{padding:12px 16px;border-bottom:1px solid var(--border);color:var(--fg-faint);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;display:flex;align-items:center;gap:8px}.card-head:before{content:"\25CD";color:var(--green)}.card-body{padding:16px;display:flex;flex-direction:column;gap:14px}.who{display:flex;align-items:center;gap:12px}.avatar{width:44px;height:44px;border-radius:0;flex:0 0 auto;display:grid;place-items:center;font-weight:700;color:var(--green);background:var(--green-glow);border:1px solid rgba(94,243,140,.3);object-fit:cover;overflow:hidden}.who .name{color:var(--fg);font-weight:500}.who .meta{color:var(--fg-faint);font-size:12px}.chips{display:flex;flex-direction:column;gap:7px}.chip{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--inset);font-size:13px}.chip .glyph{width:1.2em;text-align:center;flex:0 0 auto}.chip .label{flex:1 1;color:var(--fg-dim)}.chip .state{font-size:11px;color:var(--fg-faint)}.chip.ok{border-color:rgba(94,243,140,.25)}.chip.ok .glyph{color:var(--green)}.chip.ok .label{color:var(--fg)}.chip.pending .glyph{color:var(--fg-faint)}.chip.skipped .glyph{color:var(--amber)}.chip.error .glyph{color:var(--red)}.deliver{display:flex;flex-direction:column;gap:12px;margin-top:4px}.ostabs{display:flex;gap:6px}.ostab{font:inherit;cursor:pointer;padding:5px 13px;border-radius:0;border:1px solid var(--border);background:transparent;color:var(--fg-faint);transition:color .2s,border-color .2s,background .2s}.ostab.active{color:var(--green);border-color:rgba(94,243,140,.4);background:var(--green-glow)}.codebox{display:flex;align-items:center;gap:10px;border:1px solid var(--border-bright);border-radius:var(--radius-sm);background:var(--inset);padding:10px 10px 10px 14px}.code-scroll{flex:1 1;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--border-bright) transparent}.code-scroll::-webkit-scrollbar{height:6px}.code-scroll::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:0}.codebox code{color:var(--green);white-space:pre;font-size:13px}.copy{flex:0 0 auto;font:inherit;cursor:pointer;border:1px solid var(--border-bright);background:var(--panel-2);color:var(--fg-dim);border-radius:0;padding:6px 11px;font-size:11.5px;transition:color .2s,border-color .2s}.copy.copied,.copy:hover{color:var(--green);border-color:var(--green-dim)}.footer{margin-top:26px;padding-top:16px;border-top:1px solid var(--border);display:flex;align-items:center;gap:16px;font-size:12px;flex-wrap:wrap}.footer,.footer .ver{color:var(--fg-faint)}.footer .ver b{color:var(--fg-dim);font-weight:500}.footer .links{margin-left:auto;display:flex;gap:16px}@keyframes blink{50%{opacity:0}}@keyframes lineIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes msgInLeft{0%{opacity:0;transform:translate3d(-10px,2px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes msgInRight{0%{opacity:0;transform:translate3d(12px,2px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes msgPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes keyPulse{0%,to{transform:scale(1) rotate(0deg);opacity:.85}50%{transform:scale(1.18) rotate(-7deg);opacity:1}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}