@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-cyrillic-ext-600-normal-Dj6eZy5f.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-600-normal-DVvC-yKp.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-cyrillic-600-normal-EVf6-Yzo.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-600-normal-8K4wrrwR.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-greek-600-normal-H7WoG9Et.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-600-normal-mc2nkWzM.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-vietnamese-600-normal-Dtizs43-.woff2)format("woff2"),url(/assets/jetbrains-mono-vietnamese-600-normal-OWROknRo.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-ext-600-normal-BfB_LPfz.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-600-normal-DObL3zCW.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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.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:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vt323-vietnamese-400-normal-D0VnvwZ9.woff2)format("woff2"),url(/assets/vt323-vietnamese-400-normal-D_5Q7Vcv.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:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vt323-latin-ext-400-normal-iUdYUaX4.woff2)format("woff2"),url(/assets/vt323-latin-ext-400-normal-DqOq58ri.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:VT323;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/vt323-latin-400-normal-wDgJuOC9.woff2)format("woff2"),url(/assets/vt323-latin-400-normal-Dqn9ZSPj.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}.billing-overlay{z-index:1200;background:#000a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.billing-panel{color:#eee9e1;background:#171613;border:1px solid #494139;width:min(660px,100%);max-height:90vh;padding:28px;font-size:14px;line-height:1.6;overflow:auto}.billing-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.billing-heading h2{margin:0 0 20px;font-size:26px}.billing-heading>button{font-size:25px}.billing-eyebrow{color:#ff8b44;text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:11px}.billing-balances{border-block:1px solid #494139;grid-template-columns:repeat(3,1fr);gap:12px;padding:20px 0;display:grid}.billing-balances strong{color:#ff8b44;font-size:30px;display:block}.billing-balances span,.billing-muted{color:#b5aca1}.billing-buttons{flex-wrap:wrap;gap:12px;margin:20px 0;display:flex}.billing-panel button{cursor:pointer;color:#eee9e1;background:#211e19;border:1px solid #716153;padding:8px 14px}.billing-panel .auth-primary{color:#100e0b;background:#d77532}.billing-panel button:disabled{opacity:.5;cursor:wait}.billing-invoices{padding:0;list-style:none}.billing-invoices li{border-bottom:1px solid #494139;justify-content:space-between;padding:10px 0;display:flex}.billing-panel a{color:#ff9d5f}.billing-identity{color:#b5aca1;overflow-wrap:anywhere;font-size:11px}.billing-panel h3{margin:24px 0 8px}@media (width<=600px){.billing-overlay{padding:10px}.billing-panel{padding:18px}.billing-balances strong{font-size:24px}.billing-balances span{font-size:11px}}.auth-page{background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--font-sans);justify-content:center;align-items:center;padding:32px 24px 64px;display:flex;position:relative;overflow:hidden}.auth-dots{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.auth-vignette{z-index:1;pointer-events:none;background:radial-gradient(70% 70%,oklch(15.5% .008 50/.72) 0%,oklch(15.5% .008 50/.28) 55%,#0000 100%);position:absolute;inset:0}.auth-card{z-index:2;background:var(--surface);border:1px solid var(--line-strong);width:100%;max-width:400px;box-shadow:var(--shadow-modal), 0 0 0 1px oklch(0% 0 0/.4);text-align:center;animation:modal-in .22s var(--ease-out);flex-direction:column;align-items:center;padding:32px 32px 26px;display:flex;position:relative}.auth-card:before{content:"";background:linear-gradient(90deg, transparent, var(--brand) 30%, var(--brand) 70%, transparent);opacity:.9;height:2px;position:absolute;top:-1px;left:-1px;right:-1px}.auth-card .logo.big{margin:0 0 14px;font-size:40px}.auth-env{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);align-items:center;gap:7px;margin-bottom:18px;font-size:10.5px;display:inline-flex}.auth-envdot{background:var(--ok);width:7px;height:7px;box-shadow:var(--glow-ok);flex-shrink:0;display:inline-block}.auth-envdot.sandbox{background:var(--warn);box-shadow:0 0 8px oklch(80% .14 85/.45)}.auth-envdot.production{background:var(--brand);box-shadow:var(--glow-brand-soft)}.auth-card h1{letter-spacing:-.02em;color:var(--ink);margin:0 0 6px;font-size:21px;font-weight:600}.auth-intro{color:var(--muted);margin:0 0 22px;font-size:13px;line-height:1.55}.auth-form{text-align:left;flex-direction:column;gap:14px;width:100%;display:flex}.auth-form .field>label{justify-content:space-between}.auth-labelhint{letter-spacing:0;text-transform:none;color:var(--faint);font-weight:500}.auth-form .field input[type=text],.auth-form .field input[type=email],.auth-form .field input[type=password]{border:1px solid var(--line-strong);background:var(--bg);height:38px;color:var(--ink);width:100%;padding:0 12px;font-family:inherit;font-size:13.5px;transition:border-color .15s,box-shadow .2s}.auth-form .field input::placeholder{color:var(--faint)}.auth-form .field input:focus{border-color:var(--brand);box-shadow:var(--glow-brand-soft);outline:none}.auth-form .field input:-webkit-autofill{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 100px var(--bg) inset;caret-color:var(--ink)}.auth-form .field input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 100px var(--bg) inset;caret-color:var(--ink)}.auth-pw{position:relative}.auth-pw input{padding-right:40px!important}.auth-pwtoggle{width:36px;color:var(--faint);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .15s,background .15s;display:inline-flex;position:absolute;top:1px;bottom:1px;right:1px}.auth-pwtoggle:hover{color:var(--ink);background:var(--surface-2)}.auth-pwtoggle:focus-visible{outline:1px solid var(--brand);outline-offset:-1px}.auth-form .errbox{margin-top:-2px}.auth-submit{justify-content:center;width:100%;height:38px;margin-top:4px;font-size:13.5px}.auth-submit svg{transition:transform .15s var(--ease-out)}.auth-submit:hover:not(:disabled) svg{transform:translate(2px)}.auth-switch{color:var(--muted);margin:20px 0 0;font-size:12.5px}.auth-switch button{font:inherit;color:var(--brand);cursor:pointer;background:0 0;border:none;border-bottom:1px solid #0000;padding:0;font-weight:600;transition:border-color .15s,color .15s}.auth-switch button:hover{color:var(--brand-hot);border-bottom-color:var(--brand-hot)}.auth-footnote{color:var(--faint);margin:20px 0 0;font-size:11.5px;line-height:1.5}.auth-foot{z-index:2;font-family:var(--font-mono);color:var(--faint);justify-content:center;align-items:center;gap:10px;font-size:11px;display:flex;position:absolute;bottom:18px;left:0;right:0}.auth-foot a{color:var(--muted);text-decoration:none}.auth-foot a:hover{color:var(--brand)}.auth-footsep{background:var(--faint);width:3px;height:3px}.auth-loading{z-index:2;font-family:var(--font-mono);color:var(--muted);align-items:center;gap:8px;font-size:12.5px;display:inline-flex;position:relative}.authenticated-shell{background:var(--bg);flex-direction:column;height:100vh;display:flex}.account-bar{height:30px;min-height:30px;font-size:11.5px;font-family:var(--font-sans);background:var(--surface);border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:0 12px;display:flex}.account-bar.sandbox{color:var(--ink-dim);background:oklch(80% .14 85/.08)}.account-env{align-items:center;gap:8px;display:inline-flex}.account-env strong{color:var(--ink-dim);font-weight:600}.account-actions{align-items:center;gap:4px;display:flex}.account-email{font-family:var(--font-mono);color:var(--faint);margin-right:8px;font-size:11px}.account-actions button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;padding:3px 8px;font-size:11.5px;transition:color .15s,background .15s,border-color .15s}.account-actions button:hover{color:var(--ink);background:var(--surface-2);border-color:var(--line-strong)}.authenticated-content{flex:1;min-height:0}.authenticated-content .app{height:100%}@media (width<=600px){.auth-page{padding:18px 14px 56px}.auth-card{padding:26px 20px 22px}.auth-foot span:last-child,.account-email,.account-mode{display:none}}.walkthrough-target-wrap{display:contents}.walkthrough-trigger{flex-shrink:0}.walkthrough-welcome,.walkthrough-card{color:var(--ink);font-family:var(--font-sans);background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-modal);text-align:left}.walkthrough-welcome{z-index:85;width:min(370px,100vw - 32px);animation:pop-up .2s var(--ease-out);padding:24px;position:fixed;bottom:22px;right:22px}.walkthrough-close{width:27px;height:27px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.walkthrough-close:hover{color:var(--ink);background:var(--raised)}.walkthrough-welcome>.walkthrough-close{position:absolute;top:12px;right:12px}.walkthrough-symbol{width:36px;height:36px;color:var(--brand);background:var(--brand-dim);place-items:center;margin-bottom:18px;display:grid}.walkthrough-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--brand);font-size:9px;font-weight:600;display:block}.walkthrough-welcome h2,.walkthrough-card h2{letter-spacing:-.04em;margin:10px 0 12px;font-size:20px;font-weight:550;line-height:1.25}.walkthrough-welcome p,.walkthrough-card p{color:var(--ink-dim);margin:0 0 14px;font-size:12px;line-height:1.8}.walkthrough-welcome-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;display:flex}.walkthrough-welcome small{color:var(--faint);margin-top:16px;font-size:10px;display:block}.walkthrough-layer{z-index:300;pointer-events:none;position:fixed;inset:0}.walkthrough-mask{pointer-events:auto;background:oklch(8% .005 50/.74);position:fixed}.walkthrough-spotlight{border:2px solid var(--brand);pointer-events:none;position:fixed;box-shadow:0 0 0 1px oklch(5% 0 0/.7),0 0 20px oklch(72% .15 41/.2)}.walkthrough-card{z-index:1;pointer-events:auto;outline:none;width:356px;max-height:calc(100dvh - 24px);padding:21px;position:fixed;overflow-y:auto}.walkthrough-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.walkthrough-progress{gap:4px;margin:10px 0 18px;display:flex}.walkthrough-progress span{background:var(--line);flex:1;height:3px}.walkthrough-progress span.done{background:var(--brand)}.walkthrough-card p.walkthrough-hint{color:var(--muted);border-left:2px solid var(--line-strong);margin:16px 0;padding-left:10px;font-size:10px;line-height:1.7}.walkthrough-open{justify-content:space-between;width:100%;padding:10px;font-size:11px}.walkthrough-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:17px;display:flex}.walkthrough-footer>span{font-family:var(--font-mono);color:var(--faint);font-size:10px}.walkthrough-footer>div{gap:7px;display:flex}.walkthrough-skip{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin:15px auto 0;padding:4px;font-size:10px;display:flex}.walkthrough-skip:hover{color:var(--ink)}.walkthrough-skip span{font-family:var(--font-mono);color:var(--faint);border:1px solid var(--line);padding:1px 4px;font-size:9px}.walkthrough-card button:focus-visible,.walkthrough-welcome button:focus-visible,.walkthrough-trigger:focus-visible{outline:2px solid var(--brand);outline-offset:3px}@media (width<=1050px){.walkthrough-trigger span{display:none}}@media (width<=680px){.walkthrough-welcome{padding:20px;bottom:12px;right:12px}.walkthrough-card{max-height:min(48dvh,410px);padding:18px}.walkthrough-card h2{font-size:18px}.walkthrough-card p{font-size:11px}.walkthrough-card .walkthrough-progress{margin-bottom:12px}.walkthrough-footer{margin-top:15px}}.connections-overlay{z-index:180}.connections-modal{flex-direction:column;width:min(1000px,100vw - 32px);max-width:1000px;max-height:min(900px,100dvh - 48px);padding:0;display:flex;overflow:hidden}.connections-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.connections-heading h2{margin:0}.connection-eyebrow{color:var(--muted);font:10px var(--font-mono);text-transform:uppercase;letter-spacing:.1em;margin:0 0 6px}.connections-layout{grid-template-columns:192px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.connections-nav{border-right:1px solid var(--line);width:auto;padding:16px 10px}.connection-nav-note{color:var(--muted);align-items:flex-start;gap:8px;margin:28px 12px 0;font-size:11px;line-height:1.6;display:flex}.connection-nav-note svg{flex:none;margin-top:2px}.connections-content{min-width:0;padding:24px;font-size:12.5px;line-height:1.65;overflow:auto}.connections-content h3{color:var(--ink);margin:0 0 5px;font-size:18px;font-weight:550}.connections-content h4{color:var(--ink);margin:0 0 12px;font-size:12.5px;font-weight:600}.connections-content p{color:var(--ink-dim);margin:0 0 16px}.connections-content .hint{color:var(--muted)}.connections-content .field{margin:0 0 18px}.connections-content input:not([type=checkbox]),.connections-content select{border:1px solid var(--line-strong);background:var(--bg);width:100%;min-width:0;height:34px;color:var(--ink);font:inherit;border-radius:0;padding:6px 9px}.connections-content input[type=checkbox]{accent-color:var(--brand);flex:none;width:14px;height:14px}.connections-content input:focus-visible,.connections-content select:focus-visible,.connections-content button:focus-visible,.connections-nav button:focus-visible,.connections-content a:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.connections-content input:disabled{opacity:.45}.connection-field-label{color:var(--ink-dim);margin-bottom:8px;display:block}.connection-section-title{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.connection-section-title>.btn{flex:none}.connection-readiness{border:1px solid var(--line-strong);background:var(--surface-2);color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:7px;margin-bottom:20px;padding:12px 14px;display:flex}.connection-readiness strong{color:var(--warn);font-size:12px}.connection-readiness.ready strong{color:var(--ok)}.connection-readiness>span:last-child{flex-basis:100%;padding-left:15px;font-size:11.5px}.connection-readiness .dot{background:var(--warn);width:7px;height:7px}.connection-readiness .dot.ok{background:var(--ok)}.connection-copy{gap:8px;min-width:0;display:flex}.connection-copy input{font-family:var(--font-mono)!important;font-size:11px!important}.connection-copy .btn{flex:none;height:34px}.connection-client-guides{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 24px;display:grid}.connection-card{border:1px solid var(--line);background:var(--surface);padding:18px}.connection-card ol{color:var(--ink-dim);margin:0 0 12px;padding-left:18px}.connection-card li{margin-bottom:8px;padding-left:3px}.connection-card .hint{font-size:11px}.connections-content a{color:var(--brand);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.connections-content a:hover{text-decoration:underline}.connection-empty{border:1px dashed var(--line-strong);color:var(--muted);padding:22px}.connection-key-list{gap:12px;display:grid}.connection-key{border:1px solid var(--line);padding:16px}.connection-key-title{overflow-wrap:anywhere;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:4px;display:flex}.connection-key-title strong{color:var(--ink);font-size:13px}.connection-status{font:10px var(--font-mono);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;color:var(--muted)}.connection-status.active{color:var(--ok)}.connection-key-prefix{color:var(--muted);font-size:11px}.connection-scope-tags{flex-wrap:wrap;gap:5px;margin:10px 0;display:flex}.connection-scope-tags code{background:var(--surface-2);border:1px solid var(--line);color:var(--ink-dim);padding:2px 5px;font-size:10px}.connection-key-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;margin:12px 0 16px;font-size:11px;display:grid}.connection-key-details dt{color:var(--muted)}.connection-key-details dd{color:var(--ink-dim);overflow-wrap:anywhere;margin:0}.connection-actions{flex-wrap:wrap;gap:8px;display:flex}.connection-actions .btn{white-space:normal;overflow-wrap:anywhere;max-width:100%;height:auto;min-height:30px}.connection-provider-note{background:var(--surface-2);border-left:2px solid var(--brand);color:var(--ink-dim);gap:10px;margin-bottom:20px;padding:14px;display:flex}.connection-provider-note>svg{color:var(--brand);flex:none;margin-top:3px}.connection-provider-note p{margin:3px 0 6px;font-size:11.5px}.connection-text-button{color:var(--brand);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-size:11.5px}.connection-create-form{margin-bottom:24px}.connection-create-form fieldset{border:0;min-width:0;margin:0;padding:0}.connection-checklist{border:1px solid var(--line);gap:8px;max-height:260px;padding:10px;display:grid;overflow:auto}.connection-scope-option{cursor:pointer;gap:8px;align-items:flex-start!important;margin:0!important;display:flex!important}.connection-scope-option input{margin-top:4px}.connection-scope-option code{color:var(--ink-dim);font-size:11px}.connection-scope-option small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.5;display:block}.connections-content .check{margin-top:6px;font-size:11.5px}.connection-secret{border:1px solid var(--brand);background:var(--brand-dim);margin-bottom:24px;padding:18px}.connection-secret h4{color:var(--brand)}.connection-secret p{font-size:11.5px}.connection-secret>.btn{margin-top:12px}.connection-notice{background:var(--ok-dim);border:1px solid var(--line);padding:12px}.connection-confirm{border:1px solid var(--brand);background:var(--raised);margin-top:20px;padding:18px;position:sticky;bottom:0;box-shadow:0 -8px 20px #0003}.connection-confirm p{font-size:11.5px}.connection-footer{border-top:1px solid var(--line);color:var(--muted);overflow-wrap:anywhere;margin-top:24px;padding-top:24px;font-size:10px}.connection-doc-links{gap:12px;margin:22px 0 26px;display:grid}.connection-doc-links>a{align-items:flex-start;gap:15px}.connection-doc-links>a>svg{flex:none;margin-top:2px}.connection-doc-links h4{color:var(--brand);margin-bottom:4px}.connection-doc-links p{margin:0;font-size:11.5px}.connection-code{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--bg);border:1px solid var(--line);font:11px/1.9 var(--font-mono);color:var(--ink-dim);padding:14px}.connection-loading{align-items:center;gap:8px;display:flex}.consent-layout{display:block;overflow:auto}.consent-layout .connections-content{max-width:760px;margin:auto}.connection-details{border:1px solid var(--line);margin:20px 0;padding:12px 16px;font-size:11px}.connection-details dt{color:var(--muted);margin-top:8px}.connection-details dd{overflow-wrap:anywhere;margin:0 0 8px}.connection-permissions{margin:0 0 22px;padding:0;list-style:none}.connection-permissions li{gap:2px;margin:9px 0;display:grid}.connection-permissions code{color:var(--brand);font-size:11px}.connection-permissions span{color:var(--muted);font-size:11.5px}@media (width<=760px){.connections-modal{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.connections-heading{padding:16px}.connections-layout{flex-direction:column;display:flex}.connections-nav{border-right:0;border-bottom:1px solid var(--line);flex-flow:wrap;flex-shrink:0;gap:3px;padding:8px}.connections-nav .settingsnavitem{width:auto;padding:8px;font-size:11px}.connection-nav-note{display:none}.connections-content{padding:16px}.connection-client-guides{grid-template-columns:1fr}.connection-key-details{grid-template-columns:1fr 1fr}.connection-section-title{display:block}.connection-section-title>.btn{margin-bottom:16px}.connection-copy{flex-wrap:wrap}.connection-copy input{flex:220px}.connection-key-title{flex-wrap:wrap;gap:3px}}.table-conflict{border-bottom:1px solid var(--warn);background:var(--surface-2);color:var(--ink-dim);flex-shrink:0;align-items:flex-start;gap:12px;padding:12px 16px;font-size:11.5px;display:flex}.table-conflict>svg{color:var(--warn);flex:none;margin-top:2px}.table-conflict-copy{flex:1;min-width:0}.table-conflict strong{color:var(--warn)}.table-conflict p{max-width:1000px;margin:4px 0 0;line-height:1.5}.table-conflict-confirm{color:var(--ink)}.table-conflict-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:510px;display:flex}@media (width<=900px){.table-conflict{flex-wrap:wrap}.table-conflict-actions{justify-content:flex-start;width:100%;max-width:none;padding-left:29px}}:root{--bg:oklch(15.5% .008 50);--surface:oklch(18.5% .009 50);--surface-2:oklch(21.5% .01 50);--raised:oklch(24.5% .012 50);--line:oklch(28.5% .012 50);--line-strong:oklch(37% .016 50);--ink:oklch(93% .006 60);--ink-dim:oklch(82% .008 60);--muted:oklch(69% .014 55);--faint:oklch(52% .012 55);--brand:oklch(72% .15 41);--brand-hot:oklch(78% .16 45);--brand-ink:oklch(16% .03 41);--brand-dim:oklch(72% .15 41/.14);--agent:oklch(75% .13 305);--agent-dim:oklch(75% .13 305/.13);--formula:oklch(79% .11 195);--formula-dim:oklch(79% .11 195/.12);--ok:oklch(76% .16 150);--ok-dim:oklch(76% .16 150/.13);--err:oklch(69% .18 25);--err-dim:oklch(69% .18 25/.14);--warn:oklch(80% .14 85);--glow-brand:0 0 14px oklch(72% .15 41/.35);--glow-brand-soft:0 0 10px oklch(72% .15 41/.22);--glow-agent:0 0 10px oklch(75% .13 305/.3);--glow-ok:0 0 8px oklch(76% .16 150/.45);--glow-err:0 0 8px oklch(69% .18 25/.45);--font-sans:"Inter Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--shadow-menu:0 4px 24px oklch(0% 0 0/.45), 0 1px 4px oklch(0% 0 0/.4);--shadow-modal:0 12px 48px oklch(0% 0 0/.55);--z-sticky:10;--z-dropdown:30;--z-panel:20;--z-overlay:90;--z-modal:100;--z-toast:200;--ease-out:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:13.5px}::selection{background:oklch(72% .15 41/.35)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line);border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--line-strong)}::-webkit-scrollbar-corner{background:0 0}.app{z-index:1;flex-direction:column;height:100vh;display:flex;position:relative}.pixelfield{z-index:0;pointer-events:none;width:min(520px,45vw);height:min(340px,45vh);position:fixed;bottom:0;right:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes pop-up{0%{opacity:0;transform:translateY(4px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-up{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@keyframes modal-in{0%{opacity:0;transform:scale(.975)}to{opacity:1;transform:scale(1)}}@keyframes pulse-run{0%,to{opacity:1;box-shadow:var(--glow-brand)}50%{opacity:.45;box-shadow:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes cell-land{0%{background:var(--ok-dim)}to{background:0 0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.topbar{border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0;align-items:center;gap:8px;height:48px;padding:0 12px;display:flex}.logo{font-family:"VT323", var(--font-mono);letter-spacing:.03em;color:var(--ink);text-shadow:0 0 8px oklch(93% .006 60/.35),0 0 2px oklch(93% .006 60/.5);-webkit-user-select:none;user-select:none;align-items:baseline;margin-right:8px;padding:1px 2px 0;font-size:21px;font-weight:400;line-height:1;display:flex;position:relative}.logo:after{content:"";pointer-events:none;background:repeating-linear-gradient(#0000 0 1.5px,oklch(8% .005 50/.28) 1.5px 3px);position:absolute;inset:0}.logocursor{color:var(--brand);text-shadow:0 0 8px oklch(72% .15 41/.7);animation:1.1s steps(2,start) infinite logoblink}@keyframes logoblink{0%,to{opacity:1}50%{opacity:0}}@media (prefers-reduced-motion:reduce){.logocursor{animation:none}}.logo.big{margin-right:0;font-size:42px}.tabs{align-items:center;gap:2px;height:100%;display:flex}.tab{cursor:pointer;height:47px;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:500;transition:color .15s,background .15s;display:inline-flex;position:relative}.tab:hover{color:var(--ink);background:var(--surface-2)}.tab.active{color:var(--ink);border-bottom-color:var(--brand);font-weight:600}.tabx{opacity:0;width:16px;height:16px;color:var(--muted);justify-content:center;align-items:center;margin-left:2px;margin-right:-6px;transition:opacity .12s,color .12s,background .12s;display:inline-flex}.tab:hover .tabx{opacity:1}.tabx:hover{color:var(--ink);background:var(--raised)}.spacer{flex:1}.rowcount{color:var(--muted);white-space:nowrap;font-size:12px;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.btn{border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink-dim);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;height:30px;padding:0 11px;font-family:inherit;font-size:12.5px;font-weight:500;transition:background .15s,border-color .15s,color .15s,box-shadow .2s,transform 60ms;display:inline-flex}.btn:hover{background:var(--raised);color:var(--ink);border-color:var(--faint)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default;transform:none}.btn svg{flex-shrink:0}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:600}.btn.primary:hover{background:var(--brand-hot);border-color:var(--brand-hot);box-shadow:var(--glow-brand);color:var(--brand-ink)}.btn.danger{color:var(--err);background:0 0;border-color:oklch(69% .18 25/.4)}.btn.danger:hover{background:var(--err-dim);border-color:var(--err);color:var(--err)}.btn.ghost{color:var(--muted);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2);color:var(--ink)}.btn.small{height:26px;padding:0 9px;font-size:12px}.btn.icon{justify-content:center;width:30px;padding:0}.btn.icon.small{width:26px}.btn.active-toggle{border-color:var(--brand);color:var(--brand);background:var(--brand-dim)}.badge{background:var(--brand);color:var(--brand-ink);font-size:10px;font-weight:700;font-family:var(--font-mono);padding:1px 5px;line-height:1.4}.btn:focus-visible,.tab:focus-visible,.chip:focus-visible{outline:1px solid var(--brand);outline-offset:1px;box-shadow:var(--glow-brand-soft)}main.body{flex:1;min-height:0;display:flex}.gridwrap{background:0 0;flex:1;position:relative;overflow:auto}.gridhead{z-index:calc(var(--z-sticky) + 2);background:var(--surface);border-bottom:1px solid var(--line-strong);width:max-content;min-width:100%;display:flex;position:sticky;top:0}.hcell{border-right:1px solid var(--line);background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:.01em;flex-shrink:0;align-items:center;gap:7px;height:38px;padding:0 9px;font-size:12px;font-weight:600;transition:background .15s;display:flex;position:relative}.hcell:hover{background:var(--surface-2)}.hcell .hname{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-dim);flex:1;overflow:hidden}.hcell:hover .hname{color:var(--ink)}.ic{flex-shrink:0}.ic-text{color:var(--faint)}.ic-agent{color:var(--agent)}.ic-formula{color:var(--formula)}.ic-fire{color:oklch(70% .19 35)}.hcell:hover .ic-fire{filter:drop-shadow(0 0 5px oklch(70% .19 35/.6))}.ic-enrich{color:oklch(74% .14 160)}.hcell:hover .ic-enrich{filter:drop-shadow(0 0 5px oklch(74% .14 160/.55))}.hcell:hover .ic-agent{filter:drop-shadow(0 0 5px oklch(75% .13 305/.6))}.hcell:hover .ic-formula{filter:drop-shadow(0 0 5px oklch(79% .11 195/.6))}.hcell .play{cursor:pointer;width:22px;height:22px;color:var(--muted);opacity:0;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .15s,color .15s,border-color .15s,box-shadow .2s;display:inline-flex}.hcell:hover .play,.hcell .play.always{opacity:1}.hcell .play:hover{color:var(--brand);border-color:var(--brand);box-shadow:var(--glow-brand-soft)}.hprog{flex:1;align-items:center;gap:7px;min-width:0;display:flex}.prog{background:var(--line);flex:1;height:3px;overflow:hidden}.prog>i{background:var(--brand);height:100%;box-shadow:var(--glow-brand);transition:width .3s var(--ease-out);display:block}.progtext{color:var(--brand);font-size:11px;font-weight:600;font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex-shrink:0}.rownumcell{z-index:var(--z-sticky);background:var(--surface);border-right:1px solid var(--line-strong);width:52px;color:var(--faint);font-size:11px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex-shrink:0;justify-content:center;align-items:center;gap:3px;display:flex;position:sticky;left:0}.gridhead .rownumcell{z-index:calc(var(--z-sticky) + 3)}.gridrow{background:var(--bg);border-bottom:1px solid var(--line);-webkit-user-select:none;user-select:none;width:max-content;min-width:100%;height:34px;display:flex}.cell input{-webkit-user-select:text;user-select:text}.gridrow:hover{background:var(--surface)}.gridrow:hover .rownumcell{background:var(--surface-2)}.gridrow .rownumcell{background:var(--surface);transition:background .1s}.cell.insel{background:oklch(72% .15 41/.13);box-shadow:inset 0 0 0 .5px oklch(72% .15 41/.35)}.hcell.grouped,.hcell.grouped.colsel{box-shadow:inset 0 2px oklch(75% .13 305/.55)}.collapsebtn{cursor:pointer;color:var(--agent);font-size:10px;font-family:var(--font-mono);opacity:0;background:0 0;border:1px solid #0000;flex-shrink:0;align-items:center;gap:3px;padding:1px 4px;transition:opacity .12s,border-color .15s,background .15s;display:inline-flex}.hcell:hover .collapsebtn,.collapsebtn.on{opacity:1}.collapsebtn:hover,.collapsebtn.on{background:var(--agent-dim);border-color:oklch(75% .13 305/.5)}.hcell.dragging{opacity:.45}.hcell.droptarget{box-shadow:inset 2px 0 0 var(--brand), inset 0 2px 0 oklch(72% .15 41/.3)}.hcell{cursor:grab}.hcell:active{cursor:grabbing}.tab[draggable]{cursor:pointer}.promptwrap{border:1px solid var(--line-strong);background:var(--bg);transition:border-color .15s,box-shadow .2s;position:relative}.promptwrap:focus-within{border-color:var(--brand);box-shadow:var(--glow-brand-soft)}.promptwrap textarea.pa,.promptwrap .hl{font-family:var(--font-mono);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;scrollbar-gutter:stable;padding:10px;font-size:11.5px;line-height:1.6}.promptwrap textarea.pa{color:#0000;width:100%;caret-color:var(--ink);z-index:1;resize:vertical;background:0 0;border:none;outline:none;display:block;position:relative}.promptwrap textarea.pa::placeholder{color:var(--muted)}.promptwrap .hl{pointer-events:none;color:var(--ink-dim);z-index:2;position:absolute;inset:0;overflow:hidden}.promptwrap .hl .clickable{pointer-events:auto;cursor:pointer}.promptwrap.formula .hl{color:var(--formula)}.promptwrap .ref-ok{color:var(--brand);background:var(--brand-dim);box-shadow:inset 0 0 0 1px oklch(72% .15 41/.35)}.promptwrap .ref-ok.opt{box-shadow:none;text-underline-offset:3px;background:oklch(72% .15 41/.06);-webkit-text-decoration:underline dashed oklch(72% .15 41/.7);text-decoration:underline dashed oklch(72% .15 41/.7);text-decoration-thickness:1px}.promptwrap.formula .ref-ok{color:oklch(88% .12 195);background:var(--formula-dim);box-shadow:inset 0 0 0 1px oklch(79% .11 195/.35)}.promptwrap.sans textarea.pa,.promptwrap.sans .hl{font-family:var(--font-sans);padding:7px 10px;font-size:13px;line-height:1.5}.aibox .promptwrap{border-color:oklch(75% .13 305/.35)}.aibox .promptwrap:focus-within{border-color:var(--agent);box-shadow:0 0 10px oklch(75% .13 305/.2)}.promptwrap .ref-bad{color:var(--err);background:var(--err-dim);-webkit-text-decoration:underline wavy oklch(69% .18 25/.7);text-decoration:underline wavy oklch(69% .18 25/.7);text-decoration-thickness:1px;box-shadow:inset 0 0 0 1px oklch(69% .18 25/.4)}.selpop.mentionpop{z-index:40;position:absolute}.cell{border-right:1px solid var(--line);cursor:default;flex-shrink:0;align-items:center;gap:7px;padding:0 9px;font-size:13px;transition:box-shadow .15s;display:flex;overflow:hidden}.cell .celltext{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-dim);overflow:hidden}.cell.agent .celltext,.cell.firecrawl .celltext{color:var(--ink)}.cell.selected{box-shadow:inset 0 0 0 1px var(--brand), var(--glow-brand-soft);background:var(--brand-dim)}.cell.formula .celltext{color:var(--formula);font-family:var(--font-mono);font-size:12px}.cell.justdone{animation:cell-land 1.2s var(--ease-out)}.cell input{width:100%;color:var(--ink);background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-size:13px}.dot{flex-shrink:0;width:7px;height:7px}.dot.idle{border:1px solid var(--line-strong);background:0 0}.dot.queued{border:1px solid var(--warn);background:0 0}.dot.running{background:var(--brand);animation:1.1s infinite pulse-run}.dot.done{background:var(--ok);box-shadow:var(--glow-ok)}.dot.error{background:var(--err);box-shadow:var(--glow-err)}.cell .errtext{color:var(--err);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.cell .pendingtext{color:var(--muted);font-size:12px}.addcolbtn{width:40px;color:var(--faint);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.addcolbtn:hover{color:var(--brand);background:var(--brand-dim)}.gridfooter{gap:6px;width:max-content;padding:6px 12px 24px;display:flex;position:sticky;left:0}.menuwrap{position:relative}.tab .menu{cursor:default;font-weight:400;top:calc(100% + 2px)}.menu{background:var(--raised);border:1px solid var(--line-strong);box-shadow:var(--shadow-menu);z-index:var(--z-dropdown);min-width:240px;animation:pop-in .14s var(--ease-out);padding:4px;position:absolute;top:calc(100% + 4px);left:0}.menu.right{left:auto;right:0}.menu.up{animation-name:pop-up;top:auto;bottom:calc(100% + 4px)}.menu button{text-align:left;cursor:pointer;width:100%;color:var(--ink-dim);background:0 0;border:none;align-items:center;gap:8px;padding:7px 10px;font-family:inherit;font-size:12.5px;transition:background .1s,color .1s;display:flex}.menu button:hover{background:var(--brand-dim);color:var(--ink)}.menu button svg{color:var(--muted);flex-shrink:0}.menu button:hover svg{color:var(--brand)}.menu .sep{background:var(--line);height:1px;margin:4px 6px}.sidepanel{border-left:1px solid var(--line-strong);background:var(--surface);width:460px;z-index:var(--z-panel);animation:slide-in-right .22s var(--ease-out);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.panelhead{border-bottom:1px solid var(--line);background:var(--surface);z-index:2;flex-shrink:0;align-items:center;gap:10px;height:48px;padding:0 16px;display:flex;position:sticky;top:0}.panelhead h3{text-overflow:ellipsis;white-space:nowrap;flex:1;align-items:center;gap:8px;margin:0;font-size:13.5px;font-weight:600;display:flex;overflow:hidden}.panelbody{flex-direction:column;gap:16px;padding:16px;display:flex}.panelfoot{background:var(--surface);border-top:1px solid var(--line);z-index:2;align-items:center;gap:8px;margin-top:auto;padding:10px 16px;display:flex;position:sticky;bottom:0}.field{flex-direction:column;gap:6px;display:flex}.field>label{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.field input[type=text],.field input[type=password],.field select,.field textarea,.maprow select,.maprow input,.filterrow select,.filterrow input{border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);width:100%;padding:7px 10px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .2s}.field input:focus,.field select:focus,.field textarea:focus,.maprow select:focus,.maprow input:focus,.filterrow select:focus,.filterrow input:focus,.pastearea:focus{border-color:var(--brand);box-shadow:var(--glow-brand-soft);outline:none}.field select,.maprow select,.filterrow select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999285' stroke-width='2.5' stroke-linecap='square'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;padding-right:28px}.field textarea{resize:vertical;line-height:1.5}.field textarea.prompt,.field textarea.code{font-family:var(--font-mono);min-height:260px;color:var(--ink-dim);font-size:11.5px;line-height:1.6}.field textarea.code{min-height:76px;color:var(--formula)}.check{color:var(--ink-dim);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:12.5px;display:flex}input[type=checkbox],input[type=radio]{appearance:none;border:1px solid var(--line-strong);background:var(--bg);cursor:pointer;flex-shrink:0;place-content:center;width:14px;height:14px;margin:0;transition:border-color .15s,background .15s,box-shadow .2s;display:inline-grid}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--brand);border-color:var(--brand);box-shadow:var(--glow-brand-soft)}input[type=checkbox]:checked:before{content:"";background:var(--brand-ink);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);width:8px;height:8px}input[type=radio]:checked:before{content:"";background:var(--brand-ink);width:6px;height:6px}.hint{color:var(--muted);font-size:11.5px;line-height:1.5}.hint a{color:var(--brand);text-decoration:none}.hint a:hover{text-decoration:underline}.chips{flex-wrap:wrap;gap:5px;display:flex}.chip{border:1px solid var(--line-strong);cursor:pointer;color:var(--muted);background:0 0;align-items:center;gap:5px;padding:4px 10px;font-family:inherit;font-size:12px;transition:border-color .15s,color .15s,background .15s,box-shadow .2s;display:inline-flex}.chip:hover{border-color:var(--brand);color:var(--ink)}.chip.on{background:var(--brand-dim);border-color:var(--brand);color:var(--brand);box-shadow:var(--glow-brand-soft);font-weight:500}.aibox{background:var(--agent-dim);border:1px solid oklch(75% .13 305/.35);flex-direction:column;gap:9px;padding:12px;display:flex}.aibox .aititle{color:var(--agent);letter-spacing:.03em;align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:flex}.aibox textarea{background:var(--bg);color:var(--ink);resize:vertical;border:1px solid oklch(75% .13 305/.35);width:100%;min-height:56px;padding:7px 10px;font-family:inherit;font-size:13px;line-height:1.5;transition:border-color .15s,box-shadow .2s}.aibox textarea:focus{border-color:var(--agent);outline:none;box-shadow:0 0 10px oklch(75% .13 305/.2)}.btn.ai{background:var(--agent);border-color:var(--agent);color:oklch(16% .04 305);align-self:flex-start;font-weight:600}.btn.ai:hover{box-shadow:var(--glow-agent);color:oklch(16% .04 305)}.btn.ai:disabled:hover{box-shadow:none}.statuschip{letter-spacing:.03em;border:1px solid;align-items:center;gap:7px;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.statuschip.done{color:var(--ok);background:var(--ok-dim);border-color:oklch(76% .16 150/.4)}.statuschip.error{color:var(--err);background:var(--err-dim);border-color:oklch(69% .18 25/.4)}.statuschip.running,.statuschip.queued{color:var(--brand);background:var(--brand-dim);border-color:oklch(72% .15 41/.4)}.statuschip.idle{border-color:var(--line-strong);color:var(--muted);background:var(--surface-2)}pre.json{background:var(--bg);border:1px solid var(--line);font-size:11.5px;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;color:var(--ink-dim);margin:0;padding:11px;line-height:1.65;overflow-x:auto}pre.json .jkey{color:var(--formula)}.errbox{background:var(--err-dim);color:var(--err);border:1px solid oklch(69% .18 25/.4);padding:9px 12px;font-size:12.5px;line-height:1.5}.maprow{align-items:center;gap:6px;display:flex}.maprow select,.maprow input{flex:1;min-width:0;padding:5px 8px;font-size:12px}.maprow .arrow{color:var(--faint);flex-shrink:0;display:flex}.maprow .warnkey{color:var(--warn);cursor:help;flex-shrink:0;display:inline-flex}.maprow .okkey{color:var(--brand);cursor:help;filter:drop-shadow(0 0 4px oklch(72% .15 41/.4));flex-shrink:0;display:inline-flex}.chip.on.opt{box-shadow:none;background:oklch(72% .15 41/.07);border-style:dashed}.chip .optlabel{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border:1px solid var(--line-strong);margin-left:2px;padding:0 4px;font-size:9.5px}.maprow .x{cursor:pointer;color:var(--faint);background:0 0;border:none;padding:3px;line-height:0;transition:color .15s}.maprow .x:hover{color:var(--err)}.filterbar{background:var(--surface);border-bottom:1px solid var(--line);animation:slide-down .18s var(--ease-out);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.filterrow{align-items:center;gap:6px;display:flex}.filterrow .conj{width:56px;color:var(--faint);text-align:right;font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.filterrow select{width:auto;max-width:220px;padding:5px 26px 5px 9px;font-size:12.5px}.filterrow input{flex:1;width:auto;max-width:240px;padding:5px 9px;font-size:12.5px}.filterrow .iconbtn{cursor:pointer;color:var(--faint);background:0 0;border:none;padding:4px;line-height:0;transition:color .15s}.filterrow .iconbtn:hover{color:var(--ink)}.filterrow .iconbtn.danger:hover{color:var(--err)}.filterrow.off select,.filterrow.off input{opacity:.35}.filteractions{align-items:center;gap:14px;padding-left:62px;display:flex}.filteractions .link{cursor:pointer;color:var(--brand);background:0 0;border:none;align-items:center;gap:4px;padding:2px 0;font-family:inherit;font-size:12px;font-weight:500;display:inline-flex}.filteractions .link:hover{color:var(--brand-hot)}.filteractions .link.red{color:var(--err)}.overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:var(--z-overlay);animation:fade-in .15s var(--ease-out);background:oklch(8% .005 50/.7);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--line-strong);width:680px;max-width:94vw;max-height:88vh;box-shadow:var(--shadow-modal);animation:modal-in .18s var(--ease-out);flex-direction:column;gap:16px;padding:20px;display:flex;overflow-y:auto}.modal h2{align-items:center;gap:9px;margin:0;font-size:15px;font-weight:600;display:flex}.modal h2 svg{color:var(--brand)}.modal .modalfoot{justify-content:flex-end;gap:8px;display:flex}.tabsmini{border-bottom:1px solid var(--line);gap:0;display:flex}.tabsmini button{cursor:pointer;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:8px 13px;font-family:inherit;font-size:12.5px;font-weight:500;transition:color .15s;display:inline-flex}.tabsmini button:hover{color:var(--ink)}.tabsmini button.active{color:var(--brand);border-bottom-color:var(--brand)}.pastearea{border:1px solid var(--line-strong);background:var(--bg);width:100%;min-height:140px;color:var(--ink);font-family:var(--font-mono);resize:vertical;padding:10px;font-size:11.5px;line-height:1.6;transition:border-color .15s,box-shadow .2s}.preview{border:1px solid var(--line);max-height:240px;overflow:auto}.preview table{border-collapse:collapse;width:100%;font-size:12px}.preview th,.preview td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:left;white-space:nowrap;text-overflow:ellipsis;max-width:220px;color:var(--ink-dim);padding:5px 9px;overflow:hidden}.preview th{background:var(--surface-2);color:var(--ink);font-size:11.5px;font-weight:600;position:sticky;top:0}.droparea{border:1px dashed var(--line-strong);text-align:center;color:var(--muted);cursor:pointer;flex-direction:column;align-items:center;gap:8px;padding:28px;font-size:13px;transition:border-color .15s,color .15s,background .15s;display:flex}.droparea:hover,.droparea.over{border-color:var(--brand);color:var(--brand);background:var(--brand-dim)}.radio{cursor:pointer;color:var(--ink-dim);align-items:center;gap:7px;font-size:12.5px;display:flex}.radiogroup{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.dedupebox{border:1px solid var(--line);background:var(--surface-2);flex-direction:column;gap:10px;padding:12px;display:flex}.empty{color:var(--muted);text-align:center;animation:fade-in .3s var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:70px 20px;display:flex}.empty .skull{color:var(--brand);filter:drop-shadow(0 0 16px oklch(72% .15 41/.45));margin-bottom:6px}.empty strong{color:var(--ink);font-size:15px;font-weight:600}.empty .steps{border:1px solid var(--line);background:var(--surface);gap:0;margin:18px 0 14px;display:flex}.empty .step{color:var(--muted);border-right:1px solid var(--line);flex-direction:column;align-items:center;gap:8px;min-width:150px;padding:18px 26px;font-size:12px;display:flex}.empty .step:last-child{border-right:none}.empty .step svg{color:var(--brand)}.empty .step:nth-child(2) svg{color:var(--agent)}.empty .step:nth-child(3) svg{color:var(--ok)}.empty .step b{color:var(--ink-dim);font-size:12.5px;font-weight:600}.empty .actions{gap:8px;display:flex}.toast{background:var(--raised);border:1px solid var(--line-strong);color:var(--ink);z-index:var(--z-toast);box-shadow:var(--shadow-menu);animation:toast-up .2s var(--ease-out);align-items:center;gap:8px;padding:9px 16px;font-size:12.5px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.toast svg{color:var(--brand);flex-shrink:0}.selbtn{border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);cursor:pointer;text-align:left;align-items:center;gap:8px;width:100%;padding:7px 10px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .2s;display:flex}.selbtn:hover{border-color:var(--faint)}.selbtn:focus-visible{border-color:var(--brand);box-shadow:var(--glow-brand-soft);outline:none}.selbtn:disabled{opacity:.45;cursor:default}.selbtn.sm{padding:5px 8px;font-size:12.5px}.selbtn .seltext{text-overflow:ellipsis;white-space:nowrap;flex:1;align-items:center;gap:7px;min-width:0;display:flex;overflow:hidden}.selbtn .seltext.ph{color:var(--muted)}.selchev{color:var(--muted);transition:transform .18s var(--ease-out);flex-shrink:0}.selchev.flip{transform:rotate(180deg)}.tabchev{transition:transform .18s var(--ease-out)}.tabchev.flip{transform:rotate(180deg)}.selpop{z-index:150;background:var(--raised);border:1px solid var(--line-strong);box-shadow:var(--shadow-menu);animation:pop-in .13s var(--ease-out);flex-direction:column;display:flex;position:fixed}.selsearch{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:7px;padding:7px 10px;display:flex}.selsearch input{color:var(--ink);background:0 0;border:none;outline:none;width:100%;font-family:inherit;font-size:12.5px}.sellist{padding:4px;overflow-y:auto}.selopt{text-align:left;cursor:pointer;width:100%;color:var(--ink-dim);transition:background .1s, color .1s, padding-left .12s var(--ease-out);background:0 0;border:none;align-items:center;gap:8px;padding:6px 9px;font-family:inherit;font-size:12.5px;display:flex}.selopt.hi{background:var(--brand-dim);color:var(--ink);padding-left:12px}.selopt.cur{color:var(--brand);font-weight:500}.selopt .sellabel{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.selopt .selhint{color:var(--faint);font-size:11px}.selopt svg:last-child{color:var(--brand);flex-shrink:0}.selempty{color:var(--muted);text-align:center;padding:12px;font-size:12.5px}.popcatcher{z-index:55;position:fixed;inset:0}.filterpanel{z-index:60;background:var(--raised);border:1px solid var(--line-strong);width:720px;max-width:calc(100vw - 24px);box-shadow:var(--shadow-menu);animation:pop-in .16s var(--ease-out);flex-direction:column;display:flex;position:fixed;top:56px;right:12px}.fphead{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.fphead svg{color:var(--brand)}.fplist{flex-direction:column;gap:6px;max-height:calc(100vh - 220px);padding:10px 12px;display:flex;overflow-y:auto}.fpempty{color:var(--muted);padding:6px 0;font-size:12.5px;line-height:1.5}.fpcol{flex-shrink:0;width:200px}.fpop{flex-shrink:0;width:160px}.fpval{flex:1;min-width:0}input.fpval{border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);padding:5px 9px;font-family:inherit;font-size:12.5px;transition:border-color .15s,box-shadow .2s}input.fpval:focus{border-color:var(--brand);box-shadow:var(--glow-brand-soft);outline:none}.ghostval{border:1px dashed var(--line);opacity:.4;height:28px}.fpfoot{border-top:1px solid var(--line);gap:8px;padding:10px 12px;display:flex}.searchbar{z-index:50;background:var(--raised);border:1px solid var(--brand);box-shadow:var(--glow-brand-soft), var(--shadow-menu);width:340px;animation:pop-in .15s var(--ease-out);color:var(--muted);align-items:center;gap:8px;padding:6px 10px;display:flex;position:absolute;top:54px;right:12px}.searchbar input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;min-width:0;font-family:inherit;font-size:13px}.searchcount{color:var(--brand);font-size:11px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.rowcheck{cursor:pointer;width:20px;height:18px;color:var(--faint);font-family:var(--font-mono);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:11px;transition:color .12s,background .12s,box-shadow .2s;display:inline-flex}.gridrow:hover .rowcheck:not(.on){box-shadow:inset 0 0 0 1px var(--line-strong)}.rowcheck:hover:not(.on){color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)!important}.rowcheck.on{background:var(--brand);color:var(--brand-ink);box-shadow:var(--glow-brand-soft);animation:check-pop .16s var(--ease-out)}.colcheck{cursor:pointer;width:12px;height:12px;box-shadow:inset 0 0 0 1px var(--line-strong);color:var(--brand-ink);opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .12s,background .12s,box-shadow .2s;display:inline-flex}.hcell:hover .colcheck,.colcheck.on{opacity:1}.colcheck:hover:not(.on){box-shadow:inset 0 0 0 1px var(--brand)}.colcheck.on{background:var(--brand);box-shadow:var(--glow-brand-soft);animation:check-pop .16s var(--ease-out)}.gridrow.rowsel,.gridrow.rowsel .rownumcell{background:oklch(72% .15 41/.09)}.gridrow.rowsel:hover,.gridrow.rowsel:hover .rownumcell{background:oklch(72% .15 41/.13)}.cell.colsel{background:oklch(72% .15 41/.07)}.hcell.colsel{background:oklch(72% .15 41/.14)}@keyframes check-pop{0%{transform:scale(.6)}to{transform:scale(1)}}.selectionbar{z-index:80;background:var(--raised);border:1px solid var(--brand);box-shadow:var(--glow-brand-soft), var(--shadow-menu);animation:toast-up .18s var(--ease-out);white-space:nowrap;align-items:center;gap:12px;padding:8px 14px;font-size:12.5px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.selectionbar>svg{color:var(--brand)}.modal.dialog{gap:12px;width:440px}.dialogmsg{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.dialoginput{border:1px solid var(--line-strong);background:var(--bg);color:var(--ink);width:100%;padding:8px 10px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .2s}.dialoginput:focus{border-color:var(--brand);box-shadow:var(--glow-brand-soft);outline:none}.menu.fixedmenu{z-index:70;position:fixed;top:auto;left:auto}.iconbtn{cursor:pointer;color:var(--faint);background:0 0;border:none;padding:4px;line-height:0;transition:color .15s,transform 80ms}.iconbtn:hover{color:var(--ink)}.iconbtn:active{transform:scale(.9)}.iconbtn.danger:hover{color:var(--err)}.modal.tablesview{width:760px}.tvtools{align-items:center;gap:8px;display:flex}.tvsearch{border:1px solid var(--line-strong);background:var(--bg);color:var(--muted);flex:1;align-items:center;gap:8px;padding:6px 10px;transition:border-color .15s,box-shadow .2s;display:flex}.tvsearch:focus-within{border-color:var(--brand);box-shadow:var(--glow-brand-soft)}.tvsearch input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:13px}.tvlist{border:1px solid var(--line);flex-direction:column;max-height:46vh;display:flex;overflow-y:auto}.tvrow{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:12px;height:44px;padding:0 12px;transition:background .12s;display:flex}.tvrow:last-child{border-bottom:none}.tvrow:hover{background:var(--surface-2)}.tvrow.cur{background:var(--brand-dim)}.tvname{cursor:pointer;min-width:0;color:var(--ink);text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:9px;padding:0;font-family:inherit;font-size:13px;font-weight:500;display:flex;overflow:hidden}.tvname.static{cursor:default}.tvname>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tvname svg{color:var(--muted);flex-shrink:0}.tvname:not(.static):hover,.tvname:not(.static):hover svg{color:var(--brand)}.tvcur{color:var(--brand);border:1px solid var(--brand);letter-spacing:.05em;text-transform:uppercase;flex-shrink:0;padding:1px 6px;font-size:10px;font-weight:700}.tvmeta{color:var(--muted);font-size:11.5px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}.tvmeta.tvdate{text-align:right;width:110px}.tvactions{opacity:0;flex-shrink:0;gap:2px;transition:opacity .12s;display:flex}.tvrow:hover .tvactions{opacity:1}.tvfoot{align-items:center;gap:10px;display:flex}.menu .estim{font-family:var(--font-mono);color:var(--brand);white-space:nowrap;margin-left:auto;font-size:10.5px}.costpop{cursor:default;min-width:300px;padding:10px}.costrow{align-items:center;gap:8px;padding:3px 4px;font-size:12.5px;display:flex}.costrow.head{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:10.5px;font-weight:600}.costrow.big{color:var(--brand);font-size:16px;font-weight:700;font-family:var(--font-mono)}.costrow .costmodel{font-family:var(--font-mono);color:var(--ink-dim);font-size:11.5px}.menu .menudanger{color:var(--err)}.menu .menudanger:hover{background:var(--err-dim);color:var(--err)}.menu .menudanger svg,.menu .menudanger:hover svg{color:var(--err)}input[type=checkbox]:checked:before,input[type=radio]:checked:before{animation:check-pop .18s var(--ease-out)}.chip{transition:border-color .15s,color .15s,background .15s,box-shadow .2s,transform 80ms}.chip:active{transform:scale(.96)}.menu button{transition:background .1s, color .1s, padding-left .12s var(--ease-out)}.menu button:hover{padding-left:13px}.tab{transition:color .15s,background .15s,transform 80ms}.tab:active{transform:translateY(1px)}.cell.selected{animation:check-pop .14s var(--ease-out)}.addcolbtn:active,.play:active,.rowcheck:active,.colcheck:active{transform:scale(.92)}.spin{animation:.9s linear infinite spin}.kbd{font-family:var(--font-mono);border:1px solid var(--line-strong);color:var(--muted);background:var(--surface-2);padding:1px 5px;font-size:10.5px}.maplist{border:1px solid var(--line);background:var(--surface-1);flex-direction:column;gap:8px;max-height:46vh;padding:10px;display:flex;overflow-y:auto}.maplist .check{margin:0}.maplist .maprow input[type=checkbox]{flex:none;width:auto}.maplist .maprow .mapsel{flex:1;min-width:0}.modal{overflow-x:hidden}.modal .field>div{min-width:0}.settingsmodal{width:720px}.settingslayout{border:1px solid var(--line);grid-template-columns:168px minmax(0,1fr);min-height:300px;display:grid}.settingsnav{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;padding:5px 0;display:flex}.settingsnavitem{color:var(--muted);text-align:left;cursor:pointer;height:34px;transition:background .12s, color .12s, padding-left .12s var(--ease-out);background:0 0;border:none;border-left:2px solid #0000;align-items:center;gap:8px;padding:0 12px;font-family:inherit;font-size:12.5px;font-weight:500;display:flex}.settingsnavitem:hover{background:var(--surface-2);color:var(--ink);padding-left:14px}.settingsnavitem.active{background:var(--surface-2);border-left-color:var(--brand);color:var(--brand)}.settingsnavitem svg{flex-shrink:0}.settingscontent{flex-direction:column;gap:20px;min-width:0;max-height:58vh;padding:16px;display:flex;overflow-y:auto}.settingsec{flex-direction:column;gap:12px;min-width:0;display:flex}.settingsec h4{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--line);align-items:center;gap:6px;margin:0;padding-bottom:7px;font-size:11px;font-weight:700;display:flex}.settingsec h4 svg{color:var(--brand)}.keystatus{letter-spacing:0;text-transform:none;color:var(--ok);align-items:center;gap:5px;margin-left:auto;font-size:10.5px;font-weight:500;display:inline-flex}.settingscontent .field>label{align-items:center;gap:5px;display:flex}.btn.aibtn{color:var(--agent);border-color:oklch(75% .13 305/.45)}.btn.aibtn:hover{background:var(--agent-dim);border-color:var(--agent);color:var(--agent)}.btn.aibtn.active{background:var(--agent-dim);border-color:var(--agent);color:var(--agent);box-shadow:var(--glow-agent)}.aimark{background:var(--agent);width:10px;height:10px;box-shadow:var(--glow-agent);flex-shrink:0}.aimark.big{width:18px;height:18px}.aimark.live{animation:1.1s ease-in-out infinite aipulse}@keyframes aipulse{0%,to{opacity:1;box-shadow:var(--glow-agent)}50%{opacity:.45;box-shadow:none}}.chatpane{border-left:1px solid var(--line-strong);background:var(--surface);width:660px;max-width:62vw;z-index:var(--z-panel);animation:slide-in-right .22s var(--ease-out);flex-shrink:0;min-height:0;display:flex}.chatrail{border-right:1px solid var(--line);background:var(--bg);flex-direction:column;flex-shrink:0;width:186px;min-height:0;display:flex}.chatrail .chatnew{color:var(--agent);border-color:oklch(75% .13 305/.4);justify-content:center;margin:8px}.chatrail .chatnew:hover{background:var(--agent-dim);border-color:var(--agent);color:var(--agent)}.chatlist{flex:1;min-height:0;padding-bottom:8px;overflow-y:auto}.chatlistempty{color:var(--faint);padding:10px 12px;font-size:11.5px}.chatgrouplabel{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);padding:9px 10px 5px;font-size:9.5px;font-weight:600}.chatitem{cursor:pointer;border-left:2px solid #0000;flex-direction:column;gap:2px;padding:6px 9px 7px 10px;transition:background .12s,border-color .12s;display:flex;position:relative}.chatitem:hover{background:var(--surface-2)}.chatitem.active{background:var(--surface-2);border-left-color:var(--agent)}.chatitemtitle{color:var(--ink-dim);text-overflow:ellipsis;white-space:nowrap;padding-right:34px;font-size:12px;font-weight:500;overflow:hidden}.chatitem.active .chatitemtitle{color:var(--ink)}.chatitemmeta{font-family:var(--font-mono);color:var(--faint);font-variant-numeric:tabular-nums;align-items:center;gap:7px;font-size:9.5px;display:flex}.chatitemcount:before{content:"·";margin-right:6px}.chatitemacts{opacity:0;gap:2px;transition:opacity .12s;display:flex;position:absolute;top:5px;right:6px}.chatitem:hover .chatitemacts{opacity:1}.chatiact{width:18px;height:18px;color:var(--faint);border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.chatiact:hover{color:var(--ink);background:var(--raised);border-color:var(--line-strong)}.chatiact.danger:hover{color:var(--err);background:var(--err-dim);border-color:var(--err)}.chatrename{background:var(--bg);border:1px solid var(--agent);width:100%;height:22px;color:var(--ink);outline:none;padding:0 5px;font-family:inherit;font-size:12px}.chatmain{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}.pixelfield.fillfield{z-index:0;width:100%;height:100%;position:absolute;inset:0}.chathead,.chatscroll,.composebox{z-index:1;position:relative}.chathead{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:9px;height:48px;padding:0 10px 0 8px;display:flex}.chathead h3{text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:13px;font-weight:600;overflow:hidden}.chatscroll{flex-direction:column;flex:1;gap:18px;min-height:0;padding:16px;display:flex;overflow-y:auto}.msg{flex-direction:column;gap:5px;max-width:100%;display:flex}.msg.user{align-items:flex-end}.msgrole{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);align-items:center;gap:7px;font-size:9.5px;font-weight:600;display:flex}.msg.assistant .msgrole{color:var(--agent)}.msgaborted{font-family:var(--font-sans);letter-spacing:0;text-transform:none;color:var(--warn);font-size:9.5px}.msgbody{color:var(--ink-dim);min-width:0;font-size:13px;line-height:1.6}.msg.user .msgbody{background:var(--surface-2);border:1px solid var(--line);white-space:pre-wrap;max-width:86%;color:var(--ink);padding:8px 11px}.msg.assistant .msgbody{border-left:2px solid var(--agent);padding-left:13px}.msgbody.thinking{min-height:20px}.caret{vertical-align:-2px;background:var(--agent);width:7px;height:14px;margin-left:3px;animation:1s steps(2,start) infinite caretblink;display:inline-block}@keyframes caretblink{0%,to{opacity:1}50%{opacity:0}}.mdp{margin:0 0 9px}.mdp:last-child{margin-bottom:0}.mdh{color:var(--ink);margin:12px 0 6px;font-weight:700}.mdh:first-child{margin-top:0}.mdh.h1{font-size:14.5px}.mdh.h2,.mdh.h3,.mdh.h4{font-size:13px}.mdlist{flex-direction:column;gap:3px;margin:0 0 9px;padding-left:18px;display:flex}.mdlist:last-child{margin-bottom:0}.mdlist li::marker{color:var(--agent)}.msgbody code{font-family:var(--font-mono);background:var(--bg);border:1px solid var(--line);color:var(--formula);padding:0 4px;font-size:11.5px}.mdcode{font-family:var(--font-mono);background:var(--bg);border:1px solid var(--line);color:var(--ink-dim);margin:0 0 9px;padding:9px 10px;font-size:11.5px;line-height:1.55;overflow-x:auto}.msgbody a{color:var(--agent);word-break:break-all;text-decoration:none}.msgbody a:hover{text-decoration:underline}.chatempty{flex-direction:column;align-items:flex-start;gap:12px;margin:auto 0;display:flex}.chatemptytitle{color:var(--muted);font-size:14px}.chatemptytitle b{color:var(--ink);font-weight:600}.chatsuggest{flex-direction:column;gap:6px;width:100%;display:flex}.suggestchip{border:1px solid var(--line);color:var(--muted);text-align:left;cursor:pointer;transition:border-color .14s, color .14s, background .14s, padding-left .14s var(--ease-out);background:0 0;padding:8px 11px;font-family:inherit;font-size:12.5px}.suggestchip:hover{border-color:var(--agent);background:var(--agent-dim);color:var(--ink);padding-left:14px}.errbox.chaterr{margin-top:4px}.composebox{border:1px solid var(--line-strong);background:var(--bg);flex-direction:column;flex-shrink:0;margin:10px 12px 12px;transition:border-color .15s,box-shadow .2s;display:flex}.composebox:focus-within{border-color:var(--agent);box-shadow:0 0 10px oklch(75% .13 305/.22)}.chatinput{width:100%;min-height:40px;max-height:190px;color:var(--ink);resize:none;background:0 0;border:none;outline:none;padding:9px 11px 4px;font-family:inherit;font-size:13px;line-height:1.5;display:block;overflow-y:auto}.chatinput::placeholder{color:var(--faint)}.composebar{align-items:center;gap:7px;padding:6px 6px 6px 11px;display:flex}.ctxfacts{font-family:var(--font-mono);color:var(--faint);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:10px;overflow:hidden}.ctxmodel{flex-shrink:0;width:132px}.ctxmodel .selbtn{border-color:var(--line);background:0 0;height:24px;font-size:11px}.composebar .chatsend,.composebar .chatstop{flex-shrink:0;justify-content:center;width:30px;height:26px;padding:0}.composebar .chatsend{background:var(--agent);border-color:var(--agent);color:var(--brand-ink)}.composebar .chatsend:hover:not(:disabled){box-shadow:var(--glow-agent)}.composebar .chatstop{color:var(--err);border-color:var(--err);background:var(--err-dim)}.chatpane.strip{width:40px}.chatstrip{background:var(--surface);cursor:pointer;color:var(--muted);border:none;flex-direction:column;flex:1;align-items:center;gap:12px;padding:14px 0;transition:background .15s,color .15s;display:flex}.chatstrip:hover{background:var(--surface-2);color:var(--ink)}.striplabel{font-family:var(--font-mono);letter-spacing:.14em;color:var(--agent);writing-mode:vertical-rl;font-size:10px;font-weight:600}.stripbusy{font-family:var(--font-mono);color:var(--agent);writing-mode:vertical-rl;font-size:9.5px;animation:1.1s ease-in-out infinite aipulse}@media (width<=1180px){.chatpane{width:520px}.chatpane.strip{width:40px}.chatrail{width:164px}}.ctxtok.heavy{color:var(--warn)}.scopeic{color:var(--agent);flex-shrink:0}.ctxselect .seltext{align-items:center;gap:6px;display:inline-flex}.msgrole svg{flex-shrink:0}.msg.user .msgrole svg{color:var(--faint)}.aihero{width:44px;height:44px;color:var(--agent);background:var(--agent-dim);box-shadow:var(--glow-agent), inset 0 0 14px oklch(75% .13 305/.12);border:1px solid oklch(75% .13 305/.5);justify-content:center;align-items:center;display:flex}.suggestchip{align-items:center;gap:8px;display:flex}.suggestchip .sugic{color:var(--agent);opacity:.75;flex-shrink:0;transition:opacity .14s}.suggestchip:hover .sugic{opacity:1}.suggestchip .sugtext{flex:1;min-width:0}.suggestchip .sugarrow{color:var(--agent);opacity:0;transition:opacity .15s, transform .15s var(--ease-out);flex-shrink:0;transform:translate(-3px,3px)}.suggestchip:hover .sugarrow{opacity:1;transform:translate(0)}.chatitemtitle{align-items:center;gap:6px;display:flex}.chatitemic{color:var(--faint);flex-shrink:0;transition:color .12s}.chatitem.active .chatitemic{color:var(--agent)}.livebadge{background:var(--agent-dim);height:24px;color:var(--agent);text-overflow:ellipsis;white-space:nowrap;cursor:default;border:1px solid oklch(75% .13 305/.35);align-items:center;gap:6px;max-width:55%;padding:0 8px;font-size:11px;font-weight:500;display:inline-flex;overflow:hidden}.livebadge svg{flex-shrink:0}.ctxspacer{flex:1}.msgsteps{flex-direction:column;gap:3px;margin:2px 0 2px 15px;display:flex}.msg.assistant .msgsteps{border-left:2px solid #0000;margin-left:0;padding-left:13px}.msgstep{font-family:var(--font-mono);color:var(--faint);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;max-width:100%;font-size:10px;display:inline-flex;overflow:hidden}.msgstep svg{color:var(--agent);flex-shrink:0}.msgstep.pending{color:var(--agent);animation:1.1s ease-in-out infinite aipulse}.msgacts{opacity:0;gap:2px;transition:opacity .12s;display:inline-flex}.msg:hover .msgacts{opacity:1}.msgact{width:18px;height:18px;color:var(--faint);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.msgact:hover{color:var(--ink);background:var(--raised);border-color:var(--line-strong)}.msgact:active{transform:scale(.92)}.msgusage{font-family:var(--font-mono);color:var(--faint);font-variant-numeric:tabular-nums;padding-left:15px;font-size:9.5px}.versionsmodal{width:640px}.versionhead{align-items:center;gap:12px;display:flex}.versionhead .hint{flex:1}.versionlist{border:1px solid var(--line);flex-direction:column;max-height:52vh;display:flex;overflow-y:auto}.versionrow{border-bottom:1px solid var(--line);align-items:center;gap:10px;min-height:40px;padding:8px 12px;display:flex}.versionrow:last-child{border-bottom:none}.versionrow:hover{background:var(--surface-2)}.versionrow.current{background:var(--bg)}.versiontime{font-family:var(--font-mono);color:var(--ink-dim);font-variant-numeric:tabular-nums;flex-shrink:0;width:128px;font-size:11px}.versionbadge{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line-strong);color:var(--muted);flex-shrink:0;padding:2px 6px;font-size:9.5px;font-weight:600}.versionbadge.live{border-color:var(--ok);color:var(--ok);background:var(--ok-dim)}.versionbadge.r-ki{border-color:var(--agent);color:var(--agent);background:var(--agent-dim)}.versionbadge.r-import{border-color:var(--brand);color:var(--brand);background:var(--brand-dim)}.versionbadge.r-manuell{border-color:var(--ok);color:var(--ok);background:var(--ok-dim)}.versionbadge.r-restore,.versionbadge.r-spalten{border-color:var(--warn);color:var(--warn);background:oklch(80% .14 85/.12)}.versionmeta{font-family:var(--font-mono);color:var(--faint);text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;flex:1;min-width:0;font-size:10.5px;overflow:hidden}.versionacts{opacity:0;gap:4px;transition:opacity .12s;display:flex}.versionrow:hover .versionacts{opacity:1}.versionacts .vdel:hover{color:var(--err);border-color:var(--err);background:var(--err-dim)}.versionempty{color:var(--faint);align-items:center;gap:8px;padding:14px 12px;font-size:12px;display:flex}.usercontext{resize:vertical;background:var(--bg);border:1px solid var(--line-strong);width:100%;min-height:150px;color:var(--ink);font-family:var(--font-sans);outline:none;padding:10px 11px;font-size:13px;line-height:1.55;transition:border-color .15s,box-shadow .2s}.usercontext::placeholder{color:var(--faint)}.usercontext:focus{border-color:var(--agent);box-shadow:0 0 10px oklch(75% .13 305/.22)}.usercontextclear{color:var(--muted);align-self:flex-start;margin-top:2px}.usercontextclear:hover{color:var(--err);border-color:var(--err);background:var(--err-dim)}.empty .emptyhint{color:var(--muted);margin-top:4px;font-size:14px}.empty .emptyactions{gap:8px;margin-top:14px;display:flex}.attachrow{flex-wrap:wrap;gap:5px;padding:8px 9px 0;display:flex}.attachchip{background:var(--agent-dim);max-width:100%;color:var(--ink-dim);border:1px solid oklch(75% .13 305/.4);align-items:center;gap:6px;padding:3px 6px;font-size:11px;display:inline-flex}.attachchip svg{color:var(--agent);flex-shrink:0}.attachchip.loading{color:var(--muted);border-color:var(--line-strong);background:0 0}.attachname{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.attachmeta{font-family:var(--font-mono);color:var(--faint);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:9.5px}.attachx{cursor:pointer;color:var(--faint);flex-shrink:0;display:inline-flex}.attachx:hover{color:var(--err)}.composebar .attachbtn{flex-shrink:0;justify-content:center;width:26px;height:26px;padding:0}.composebar .attachbtn:hover{color:var(--agent);border-color:var(--agent)}.dedupemodal{width:680px}.dedupeindex{align-items:center;gap:10px;display:flex}.dedupeindex .hint{flex:1;align-items:center;gap:6px;display:inline-flex}.dedupeindex .hint b{color:var(--ink)}.dedupecrits{border:1px solid var(--line);flex-direction:column;display:flex}.dedupecrit{border-bottom:1px solid var(--line);opacity:.6;grid-template-columns:220px minmax(0,1fr) 84px;align-items:center;gap:10px;padding:7px 10px;transition:opacity .12s,background .12s;display:grid}.dedupecrit:last-child{border-bottom:none}.dedupecrit.on{opacity:1;background:var(--bg)}.dedupecrit .check{gap:8px;margin:0}.dedupekind{color:var(--ink);font-weight:600}.dedupeclose{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-size:9.5px}.dedupesel{min-width:0}.dedupesel .selbtn{height:26px;font-size:12px}.dedupehits{font-family:var(--font-mono);color:var(--brand);text-align:right;font-variant-numeric:tabular-nums;font-size:10.5px}.dedupemode{flex-direction:column;gap:6px;display:flex}.dedupemode .check{gap:8px;margin:0}.dedupesummary{border:1px solid var(--line-strong);background:var(--surface-2);color:var(--ink-dim);padding:10px 12px;font-size:13px}.dedupesummary.has{border-color:var(--brand);background:var(--brand-dim);color:var(--ink)}.dedupesummary b{color:var(--brand);font-family:var(--font-mono);font-size:15px}.dedupeflag{flex-direction:column;gap:10px;display:flex}.dedupeflag input[type=text],.dedupeflag .field>input{max-width:260px}.dedupeflag .check{gap:8px;margin:0;font-size:12.5px}.dedupehits.warn{color:var(--warn)}.dedupewarn{color:var(--warn);margin-top:8px;font-size:12px}.chatpane{position:relative}.dropoverlay{z-index:5;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none;animation:fade-in .12s var(--ease-out);background:oklch(15.5% .008 50/.82);justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.dropzone{border:2px dashed var(--agent);background:var(--agent-dim);width:100%;max-width:420px;box-shadow:var(--glow-agent), inset 0 0 40px oklch(75% .13 305/.08);text-align:center;color:var(--agent);flex-direction:column;align-items:center;gap:8px;padding:34px 28px;display:flex}.dropzone svg{filter:drop-shadow(0 0 10px oklch(75% .13 305/.5));margin-bottom:4px}.droptitle{color:var(--ink);font-size:16px;font-weight:600}.drophint{font-family:var(--font-mono);letter-spacing:.06em;color:var(--agent);font-size:10.5px}.dropsub{color:var(--muted);max-width:320px;margin-top:4px;font-size:12px}.mdtablewrap{margin:0 0 9px;overflow-x:auto}.mdtable{border-collapse:collapse;min-width:100%;font-size:12px}.mdtable th,.mdtable td{border:1px solid var(--line);text-align:left;vertical-align:top;white-space:nowrap;padding:4px 8px}.mdtable th{background:var(--surface-2);color:var(--ink);font-size:11px;font-weight:600}.mdtable td{color:var(--ink-dim);font-family:var(--font-mono);font-size:11px}.modal.connections-modal{gap:0;width:min(1100px,100vw - 48px);max-width:calc(100vw - 48px);max-height:min(960px,100dvh - 48px);padding:0;overflow:hidden}.connections-modal .connections-heading{flex:none;padding:24px 28px}.connections-modal .connections-heading h2{font-size:22px}.connections-modal .connections-heading>.btn{flex-shrink:0}.connections-modal .connection-eyebrow{font-size:11px}.connections-modal .connections-layout{flex:auto;grid-template-columns:220px minmax(0,1fr);min-height:0}.connections-modal .connections-nav{min-width:0;padding:20px 12px}.connections-modal .connections-nav .settingsnavitem{white-space:normal;height:auto;min-height:42px;padding:10px 12px;font-size:14px;line-height:1.45}.connections-modal .connection-nav-note{font-size:12px}.connections-modal .connections-content{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:28px;font-size:14px;line-height:1.65}.connections-modal .connections-content h3{margin-bottom:8px;font-size:21px}.connections-modal .connections-content h4{font-size:15px}.connections-modal .connections-content .field>label{font-size:13px}.connections-modal .connections-content .hint,.connections-modal .connections-content .check,.connections-modal .connection-readiness strong,.connections-modal .connection-readiness>span:last-child,.connections-modal .connection-provider-note p,.connections-modal .connection-scope-option small,.connections-modal .connection-secret p,.connections-modal .connection-confirm p,.connections-modal .connection-doc-links p,.connections-modal .connection-permissions span,.connections-modal .connection-text-button{font-size:13px;line-height:1.65}.connections-modal .connection-client-guides{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0 32px}.connections-modal .connection-card{min-width:0;padding:22px}.connections-modal .connection-codex-guide{grid-column:1/-1}.connections-modal .connection-card ol{padding-left:20px}.connections-modal .connection-card li{margin-bottom:12px}.connections-modal .connection-card a{overflow-wrap:anywhere}.connections-modal .connection-key{padding:20px}.connections-modal .connection-key-title strong{font-size:15px}.connections-modal .connection-key-details,.connections-modal .connection-details{font-size:13px}.connections-modal .connection-status{white-space:normal;font-size:11px}.connections-modal .connection-code{padding:18px;font-size:12px}.connections-modal .connections-content input:not([type=checkbox]),.connections-modal .connections-content select{height:40px}.connections-modal .connection-copy{align-items:flex-start}.connections-modal .connection-copy input{font-size:12px!important}.connections-modal .connection-copy .btn{height:auto;min-height:40px}.connections-modal .connections-content .btn{white-space:normal;min-height:36px;font-size:13px;line-height:1.45}.connections-modal .connection-section-title>div{min-width:0}.connections-modal .connection-section-title>.btn{max-width:45%}.connections-modal .consent-layout{overscroll-behavior:contain;scrollbar-gutter:stable;overflow-y:auto}.connections-modal .consent-layout .connections-content{overscroll-behavior:auto;scrollbar-gutter:auto;flex:none;width:100%;max-width:820px;margin:0 auto;overflow:visible}@media (width<=1040px){.connections-modal .connection-client-guides{grid-template-columns:minmax(0,1fr)}.connections-modal .connection-key-details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.modal.connections-modal{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.connections-modal .connections-heading{padding:20px}.connections-modal .connections-heading h2{font-size:20px}.connections-modal .connections-nav{border-right:0;flex-flow:wrap;padding:8px}.connections-modal .connections-nav .settingsnavitem{min-height:44px;padding:10px}.connections-modal .connections-content{padding:20px}.connections-modal .connection-card{padding:18px}.connections-modal .connection-section-title>.btn{max-width:100%}.connections-modal .connection-copy input{flex:100%}.connections-modal .connection-doc-links>a{gap:10px}}@media (width<=480px){.connections-modal .connection-key-details{grid-template-columns:minmax(0,1fr)}.connections-modal .connections-content{padding:16px}.connections-modal .connection-actions .btn{flex:auto}}
