@font-face{font-family:Schibsted Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/schibsted-grotesk-latin.woff2)format("woff2");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:Schibsted Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/schibsted-grotesk-latin-ext.woff2)format("woff2");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:Schibsted Grotesk;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/schibsted-grotesk-latin-italic.woff2)format("woff2");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:Schibsted Grotesk;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/schibsted-grotesk-latin-ext-italic.woff2)format("woff2");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:"Source Serif 4";font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/source-serif-4-latin.woff2)format("woff2");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:"Source Serif 4";font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/source-serif-4-latin-ext.woff2)format("woff2");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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/source-serif-4-latin-italic.woff2)format("woff2");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:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/source-serif-4-latin-ext-italic.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhGq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhPq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhIq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhEq3-cXbKDO1w.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhFq3-cXbKDO1w.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhLq3-cXbKD.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhGq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhPq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhIq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhEq3-cXbKDO1w.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhFq3-cXbKDO1w.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhLq3-cXbKD.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhGq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhPq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhIq3-cXbKDO1w.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhEq3-cXbKDO1w.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhFq3-cXbKDO1w.woff2)format("woff2");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:Roboto Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/L0x5DF4xlVMF-BfR8bXMIjhLq3-cXbKD.woff2)format("woff2");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:Material Symbols Rounded;font-style:normal;font-weight:400;font-display:block;src:url(/fonts/material-symbols-rounded.woff2)format("woff2")}.material-symbols-rounded{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;font-family:Material Symbols Rounded;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}:root{--ui:"Schibsted Grotesk", -apple-system, system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--serif:"Source Serif 4", Gelasio, Georgia, "Times New Roman", serif;--mono:"Roboto Mono", ui-monospace, monospace;--bg:#0b0f14;--surface:#131a22;--surface-2:#18212b;--panel-2:#1b2531;--line:#ffffff13;--line-strong:#ffffff26;--text:#e7edf3;--text-mid:#a7b2bf;--text-dim:#717e8c;--accent:#34a9e1;--accent-ink:#04222f;--accent-soft:#34a9e121;--ok:#4fb585;--ok-soft:#4fb58526;--warn:#e5a93a;--warn-soft:#e5a93a26;--err:#e27272;--err-soft:#e2727226;--shadow:none;--shadow-card:none;--elev-shadow:0 4px 20px #00000059;--sema-bg:#00000047;--chat-bg:#0e141b;--bubble:#080c10;--bubble-line:#ffffff17;--radius:16px;--radius-inset:12px;--radius-bubble:16px;--radius-composer:26px;--radius-pill:999px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--panel:var(--surface);--muted:var(--text-mid);--off:var(--text-dim);--error:var(--err)}[data-theme=light]{--bg:#ecf1f5;--surface:#fff;--surface-2:#fff;--panel-2:#f2f6fa;--line:#0d1e301a;--line-strong:#0d1e302e;--text:#0f1722;--text-mid:#45545f;--text-dim:#5c6b7a;--accent:#11679a;--accent-ink:#fff;--accent-soft:#11679a17;--ok:#1e8f55;--ok-soft:#1e8f551a;--warn:#b5790e;--warn-soft:#b5790e1f;--err:#cb4747;--err-soft:#cb47471a;--shadow:none;--shadow-card:none;--elev-shadow:0 4px 20px #0d1e301a;--sema-bg:#0d1e300f;--chat-bg:#e7edf3;--bubble:#e0e8ee;--bubble-line:#0d1e301f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--ui);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.4}.mono{font-family:var(--mono);font-feature-settings:"tnum" 1}.ms{vertical-align:middle;-webkit-font-feature-settings:"liga";font-family:Material Symbols Rounded;font-style:normal;font-weight:400;line-height:1;display:inline-block}.muted{color:var(--muted)}.error{color:var(--error)}.center{place-items:center;height:100%;display:grid}.login{place-items:center;min-height:100%;padding:24px;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);text-align:center;width:100%;max-width:360px;padding:28px 24px}.login-logo{margin-bottom:8px}.login-card h1{letter-spacing:.5px;margin:4px 0 2px;font-size:24px}.btn{appearance:none;border:1px solid var(--line);background:var(--panel-2);width:100%;color:var(--text);cursor:pointer;border-radius:10px;margin-top:12px;padding:12px 16px;font-size:15px}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn.link{color:var(--muted);background:0 0;border:none}.setup{text-align:left;gap:10px;margin-top:16px;display:grid}.setup label{color:var(--muted);gap:4px;font-size:13px;display:grid}.setup input{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:8px;padding:10px 12px;font-size:15px}.app-shell{flex-direction:column;min-height:100%;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--panel-2);justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:8px;font-weight:600;display:flex}.board{width:100%;max-width:1100px;margin:0 auto;padding:20px 16px}.board h2{margin:4px 0}.cards{grid-template-columns:1fr;gap:14px;margin-top:18px;display:grid}.cards-mt{margin-top:14px}@media (width>=720px){.cards{grid-template-columns:repeat(3,1fr)}}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.card h3{text-transform:uppercase;letter-spacing:.6px;color:var(--muted);margin:0 0 8px;font-size:13px}.metric{margin:0;font-size:28px;font-weight:700}.metric span{color:var(--muted);font-size:14px;font-weight:400}.server-list{gap:6px;margin:6px 0 0;padding:0;list-style:none;display:grid}.dot{border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.dot.ok{background:var(--ok)}.dot.off{background:var(--off)}.badge{border:1px solid var(--line);color:var(--text);background:var(--panel-2);border-radius:999px;padding:3px 10px;font-size:12px}.st-running{color:var(--accent)}.st-awaiting_approval{color:var(--warn)}.st-done{color:var(--ok)}.st-error,.st-timeout{color:var(--error)}.st-paused,.st-queued,.st-canceled{color:var(--muted)}.dot.st-running{background:var(--accent)}.dot.st-awaiting_approval{background:var(--warn)}.dot.st-done{background:var(--ok)}.dot.st-error,.dot.st-timeout{background:var(--error)}.dot.st-paused,.dot.st-queued,.dot.st-canceled{background:var(--off)}.card.span2{grid-column:1/-1}.card-head{justify-content:space-between;align-items:center;display:flex}.btn.small{width:auto;margin:0;padding:6px 12px;font-size:13px}.session-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.session-row{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.session-row .s-title{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.console{flex-direction:column;flex:1;gap:10px;width:100%;max-width:900px;margin:0 auto;padding:16px;display:flex;overflow-y:auto}.tool-card{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;overflow:hidden}.tool-card.err{border-color:var(--error)}.tool-card.forming{border-style:dashed}.tool-head{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:10px 12px;font-size:14px;display:flex}.tool-dot{background:var(--accent);border-radius:50%;width:8px;height:8px;display:inline-block}.tool-input,.tool-result{background:var(--sema-bg);border-top:1px solid var(--line);white-space:pre-wrap;word-break:break-word;max-height:320px;margin:0;padding:10px 12px;font:12px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.tool-result.err,.stderr{color:var(--error)}.stderr{white-space:pre-wrap;margin:0;padding:8px 12px;font:12px/1.45 ui-monospace,monospace}.result{color:var(--muted);text-align:center;border-top:1px dashed var(--line);padding-top:8px;font-size:13px}.result.err{color:var(--error)}.composer-bar{border-top:1px solid var(--line);background:var(--panel-2);gap:8px;padding:12px 16px;display:flex;position:sticky;bottom:0}.composer-bar input{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;flex:1;padding:10px 12px;font-size:15px}.composer-bar .btn{width:auto;margin:0}.composer{gap:14px;max-width:640px;display:grid}.composer label{color:var(--muted);gap:6px;font-size:13px;display:grid}.composer select,.composer input[type=text],.composer textarea{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:8px;padding:10px 12px;font-family:inherit;font-size:15px}.levers{grid-template-columns:1fr 1fr;gap:12px;display:grid}.levers .toggle{color:var(--text);flex-direction:row;grid-column:1/-1;align-items:center;gap:8px;display:flex}.levers .toggle input{width:auto}@media (width<=560px){.levers{grid-template-columns:1fr}}html,body,#root{max-width:100%;overflow-x:hidden}.app-shell{width:100%;max-width:100%;overflow-x:hidden}.topbar{box-sizing:border-box;gap:10px;width:100%}.topbar>*{min-width:0}.brand{min-width:0;overflow:hidden}.brand>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.board,.console{box-sizing:border-box}.card{min-width:0;overflow:hidden}.session-list{min-width:0}.session-row{flex-wrap:wrap;min-width:0}.session-row .muted{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.bubble,pre,.tool-card{max-width:100%}.composer,.composer select,.composer input,.composer textarea,.composer-bar{box-sizing:border-box;width:100%}.app{width:100%;max-width:1140px;padding:0 20px calc(86px + env(safe-area-inset-bottom));margin:0 auto;overflow-x:clip}.app .bar{z-index:20;background:var(--bg);align-items:center;gap:10px;margin-bottom:6px;padding:14px 0 13px;display:flex;position:sticky;top:0}.app .brand{align-items:center;gap:11px;min-width:0;display:flex}.app .mark{border:1px solid var(--line);background:#fff;border-radius:12px;flex:none;place-items:center;width:36px;height:36px;display:grid}.app .mark svg{width:25px;height:25px;display:block}.app .brand h1{font-family:var(--ui);letter-spacing:.2px;margin:0;font-size:17px;font-weight:600;line-height:1}.app .brand h1 .ai{color:var(--accent)}.app .brand .sub{color:var(--text-dim);letter-spacing:1.2px;text-transform:uppercase;margin-top:3px;font-size:12.5px}.app .bar .spacer{flex:1}.app .btn-primary{border-radius:var(--radius-pill);background:var(--accent);height:40px;color:var(--accent-ink);cursor:pointer;box-shadow:var(--shadow-card);white-space:nowrap;border:none;align-items:center;gap:6px;padding:0 18px;font-family:inherit;font-size:15px;font-weight:600;transition:filter .14s,transform .1s;display:inline-flex}.app .btn-primary:hover{filter:brightness(1.06)}.app .btn-primary:active{transform:translateY(1px)}.app .btn-primary:disabled{opacity:.55;cursor:default;filter:none}.app .btn-primary .ms{font-size:19px}.app .bar .btn-primary{height:38px;padding:0 16px}.app .iconbtn{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--text-mid);cursor:pointer;box-shadow:var(--shadow-card);border-radius:50%;flex:none;place-items:center;transition:border-color .15s,color .15s,transform .1s;display:grid}.app .iconbtn:hover{color:var(--text);border-color:var(--line-strong)}.app .iconbtn .ms{font-size:21px}.app .scr-title{font-family:var(--ui);letter-spacing:.2px;margin:18px 2px 4px;font-size:20px;font-weight:600}.app .scr-sub{color:var(--text-dim);margin:0 2px 16px;font-size:14px}.app .scr-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.app .subhead{font-family:var(--ui);letter-spacing:0;text-transform:none;color:var(--text-dim);margin:26px 2px 13px;font-size:16px;font-weight:400}.app .subhead-row{justify-content:space-between;align-items:center;gap:12px;margin:26px 2px 13px;display:flex}.app .subhead-row .subhead{margin:0}.app .btn-close-all{border:1px solid var(--line);border-radius:var(--radius-pill);height:32px;color:var(--text-mid);cursor:pointer;background:0 0;align-items:center;gap:7px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:600;transition:color .14s,background .14s,border-color .14s;display:inline-flex}.app .btn-close-all:hover{color:var(--err);background:var(--err-soft);border-color:var(--line-strong)}.app .btn-close-all .ms{font-size:18px}.app .btn-close-all .cnt{font-family:var(--mono);background:var(--accent-soft);color:var(--text-mid);border-radius:20px;padding:1px 7px;font-size:12.5px;font-weight:500}.app .readout{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);grid-template-columns:repeat(4,1fr);gap:1px;margin-top:18px;display:grid;overflow:hidden}.app .gauge{background:var(--surface);padding:16px 17px 15px}.app .gauge .lbl{letter-spacing:.4px;color:var(--text-dim);align-items:center;gap:6px;font-size:13px;display:flex}.app .gauge .lbl .ms{font-size:16px}.app .gauge .val{font-family:var(--ui);letter-spacing:.3px;margin-top:10px;font-size:26px;font-weight:600;line-height:1}.app .gauge.alert .val{color:var(--accent)}.app .gauge .foot{color:var(--text-dim);margin-top:8px;font-size:13px}.app .gauge .foot .f-warn{color:var(--warn);font-weight:600}.app .gauge .foot .f-err{color:var(--err);font-weight:600}.app .st{font-family:var(--ui);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;border-radius:var(--radius-pill);border:1px solid #0000;align-items:center;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.app .st.wait{color:#04232f;background:#34a6df}.app .st.run{color:#fff;background:#2fa66a}.app .st.done{color:#fff;background:#0c4f74}.app .st.err{color:#fff;background:#c8443f}.app .st.rest{background:var(--accent-soft);color:var(--text-mid);border-color:var(--line)}.app .srvstat{align-items:center;gap:9px;display:inline-flex}.app .srvstat .word{font-size:12.5px;font-weight:600}.app .srvstat.s-green .word{color:var(--ok)}.app .srvstat.s-amber .word{color:var(--warn)}.app .srvstat.s-red .word{color:var(--err)}.app .semaforo{background:var(--sema-bg);border:1px solid var(--line);border-radius:5px;flex-direction:column;flex:none;gap:3px;padding:3px;display:inline-flex}.app .semaforo i{opacity:.15;border-radius:50%;width:7px;height:7px;display:block}.app .semaforo i.r{background:#e0524f}.app .semaforo i.a{background:#e5a93a}.app .semaforo i.g{background:#33b06e}.app .srvstat.s-red .semaforo i.r{opacity:1;box-shadow:0 0 5px #e0524f8c}.app .srvstat.s-amber .semaforo i.a{opacity:1;box-shadow:0 0 5px #e5a93a8c}.app .srvstat.s-green .semaforo i.g{opacity:1;box-shadow:0 0 5px #33b06e8c}.app .grid{grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:14px;display:grid}.app .card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;padding:16px 16px 14px;transition:border-color .14s}.app .card:hover{border-color:var(--line-strong)}.app .card .top{justify-content:space-between;align-items:center;gap:10px;display:flex}.app .card .name{font-family:var(--ui);letter-spacing:.2px;font-size:17px;font-weight:600}.app .card .kind{color:var(--text-dim);border:1px solid var(--line);white-space:nowrap;border-radius:6px;padding:2px 7px;font-size:13px}.app .card .meta{flex-direction:column;gap:5px;margin-top:12px;display:flex}.app .card .meta .row{color:var(--text-mid);align-items:center;gap:8px;min-width:0;font-size:14px;display:flex}.app .card .meta .row .ms{color:var(--text-dim);flex:none;font-size:15px}.app .card .meta .row .path,.app .card .meta .row .ip{font-family:var(--mono);color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.app .card .meta .srv{max-width:100%;font-family:var(--mono);color:var(--text-mid);background:var(--accent-soft);border:1px solid var(--line);border-radius:7px;align-self:flex-start;align-items:center;gap:6px;padding:3px 9px;font-size:12.5px;font-weight:500;display:inline-flex}.app .card .meta .srv .ms{color:var(--accent);flex:none;font-size:15px}.app .card .meta .srv .nm{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app .card .foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:14px;padding-top:12px;display:flex}.app .card .sline{color:var(--text-mid);font-size:12.5px}.app .card .sline .hi{color:var(--accent);font-weight:600}.app .card .sline .lo{color:var(--text-dim)}.app .card .sline .bad{color:var(--err)}.app .card .open{color:var(--accent);align-items:center;gap:4px;font-size:13.5px;font-weight:600;display:inline-flex}.app .card .open .ms{font-size:17px}.app .card.new{text-align:center;color:var(--text-dim);border-style:dashed;place-items:center;min-height:168px;display:grid}.app .card.new:hover{color:var(--accent);border-color:var(--line-strong)}.app .card.new .ms{margin-bottom:6px;font-size:26px}.app .card.new span{font-size:14px;font-weight:500}.app .card.off{opacity:.72}.app .card .top-right{align-items:center;gap:9px;display:flex}.app .cardbtn{border:1px solid var(--line);width:30px;height:30px;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;transition:color .14s,border-color .14s,background .14s;display:grid}.app .cardbtn:hover{color:var(--text);border-color:var(--line-strong);background:var(--panel-2)}.app .cardbtn .ms{font-size:17px}.app .list{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:var(--surface);overflow:hidden}.app .srow{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:13px;padding:13px 16px;transition:background .12s;display:flex}.app .srow:first-child{border-top:none}.app .srow:hover{background:var(--panel-2)}.app .srow.waitrow,.app .srow.waitrow:hover{background:var(--accent-soft)}.app .srow .stat{flex:none;width:124px}.app .srow .body{flex:1;min-width:0}.app .srow .title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:500;overflow:hidden}.app .srow .where{color:var(--text-dim);margin-top:2px;font-size:12.5px}.app .srow .where b{color:var(--text-mid);font-weight:500}.app .srow .right{flex:none;align-items:center;gap:14px;display:flex}.app .srow .model{font-family:var(--mono);color:var(--text-mid);border:1px solid var(--line);border-radius:6px;padding:3px 7px;font-size:12.5px}.app .srow .ago{color:var(--text-dim);text-align:right;width:52px;font-size:12.5px}.app .srow .stop{border:1px solid var(--line);width:32px;height:32px;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;transition:color .14s,border-color .14s,background .14s;display:grid}.app .srow .stop:hover{color:var(--err);background:var(--err-soft);border-color:var(--line-strong)}.app .srow .stop .ms{font-size:18px}.app .srow .del{border:1px solid var(--line);width:32px;height:32px;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;transition:color .14s,border-color .14s,background .14s;display:grid}.app .srow .del:hover{color:var(--err);background:var(--err-soft);border-color:var(--err)}.app .srow .del .ms{font-size:18px}.app .srow .go{color:var(--text-dim);place-items:center;display:grid}.app .srow:hover .go{color:var(--accent)}.app .srow .go .ms{font-size:20px}.app .ntools{flex:none;align-items:center;gap:8px;margin-top:18px;display:flex}.app .btn-ghost{border:1px solid var(--line);border-radius:var(--radius-pill);height:32px;color:var(--text-mid);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 13px;font-family:inherit;font-size:14px;font-weight:600;transition:color .14s,background .14s,border-color .14s;display:inline-flex}.app .btn-ghost:hover{color:var(--text);border-color:var(--line-strong)}.app .btn-ghost.danger:hover{color:var(--err);background:var(--err-soft);border-color:var(--line-strong)}.app .btn-ghost .ms{font-size:18px}.app .nlist{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:var(--surface);overflow:hidden}.app .nrow{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:13px;padding:14px 16px;transition:background .12s;display:flex}.app .nrow:first-child{border-top:none}.app .nrow:hover{background:var(--panel-2)}.app .nrow.action,.app .nrow.action:hover{background:var(--accent-soft)}.app .nrow .ic{border-radius:50%;flex:none;place-items:center;width:36px;height:36px;display:grid}.app .nrow .ic .ms{font-size:20px}.app .nrow .ic.app{background:var(--accent-soft);color:var(--accent)}.app .nrow .ic.ok{background:var(--ok-soft);color:var(--ok)}.app .nrow .ic.err{background:var(--err-soft);color:var(--err)}.app button.nrow{text-align:left;border:none;border-top:1px solid var(--line);width:100%;font:inherit;color:inherit;background:0 0}.app button.nrow:first-child{border-top:none}.app .nrow.unread{background:var(--accent-soft)}.app .nrow .dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;margin-left:auto}.app .nrow .ic.warn{background:var(--warn-soft);color:var(--warn)}.app .nrow .body{flex:1;min-width:0}.app .nrow .ttl{color:var(--text);font-size:16px;font-weight:600}.app .nrow .desc{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:14px;overflow:hidden}.app .nrow .desc .mono{color:var(--text-mid)}.app .nrow .right{flex:none;align-items:center;gap:12px;display:flex}.app .nrow .time{color:var(--text-dim);white-space:nowrap;font-size:12.5px}.app .nrow .review{border-radius:var(--radius-pill);background:var(--accent);height:32px;color:var(--accent-ink);cursor:pointer;border:none;align-items:center;gap:5px;padding:0 13px;font-family:inherit;font-size:13px;font-weight:600;display:inline-flex}.app .nrow .review .ms{font-size:16px}.app .nrow .go{color:var(--text-dim);place-items:center;display:grid}.app .nrow:hover .go{color:var(--accent)}.app .nrow .go .ms{font-size:20px}.app .nrow.unread{border-left:3px solid var(--accent);padding-left:13px}.app .nrow.read .ttl{color:var(--text-mid);font-weight:500}.app .nrow .nact{width:32px;height:32px;color:var(--text-dim);cursor:pointer;opacity:0;background:0 0;border:1px solid #0000;border-radius:50%;flex:none;place-items:center;transition:opacity .14s,color .14s,background .14s,border-color .14s;display:grid}.app .nrow:hover .nact{opacity:1}.app .nrow .nact:hover{color:var(--text);border-color:var(--line);background:var(--panel-2)}.app .nrow .nact.del:hover{color:var(--err);background:var(--err-soft);border-color:var(--line-strong)}.app .nrow .nact .ms{font-size:18px}.app .crumb{color:var(--text-dim);align-items:center;gap:5px;margin:16px 2px 14px;font-size:15px;display:flex}.app .crumb a{color:var(--text-mid);cursor:pointer;align-items:center;gap:5px;text-decoration:none;display:inline-flex}.app .crumb a:hover{color:var(--accent)}.app .crumb a .ms{font-size:18px}.app .crumb .sep{color:var(--text-dim)}.app .crumb .cur{color:var(--text);font-weight:500}.app .phead{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);align-items:flex-start;gap:16px;padding:18px 18px 16px;display:flex}.app .phead .pinfo{flex:1;min-width:0}.app .phead .ptitle{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.app .phead .ptitle .name{font-family:var(--ui);letter-spacing:.2px;font-size:22px;font-weight:600}.app .phead .kind{color:var(--text-dim);border:1px solid var(--line);border-radius:6px;padding:2px 7px;font-size:12px}.app .phead .pmeta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:11px;display:flex}.app .srv{font-family:var(--mono);color:var(--text-mid);background:var(--accent-soft);border:1px solid var(--line);border-radius:7px;align-items:center;gap:6px;padding:3px 9px;font-size:12.5px;font-weight:500;display:inline-flex}.app .srv .ms{color:var(--accent);font-size:15px}.app .pathtag{font-family:var(--mono);color:var(--text-dim);align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.app .pathtag .ms{font-size:15px}.app .phead .pstats{color:var(--text-mid);margin-top:12px;font-size:13px}.app .phead .pstats .hi{color:var(--accent);font-weight:600}.app .phead .actions{flex:none}.app .phead .btn-primary{height:38px;padding:0 15px}.app .ghead{justify-content:space-between;align-items:center;gap:12px;margin:26px 2px 12px;display:flex}.app .ghead .lhs{align-items:center;gap:9px;display:flex}.app .ghead h2{font-family:var(--ui);letter-spacing:0;text-transform:none;color:var(--text-dim);margin:0;font-size:16px;font-weight:400}.app .ghead .badge{font-family:var(--mono);color:var(--text-mid);background:var(--accent-soft);border-radius:20px;padding:1px 7px;font-size:12.5px;font-weight:500}.app .form{max-width:720px;margin:0 auto}.app .ftitle{letter-spacing:.2px;margin:6px 2px 2px;font-size:22px;font-weight:600}.app .fsub{color:var(--text-dim);margin:0 2px 8px;font-size:14px}.app .fsection{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card);margin-top:16px;padding:18px}.app .fsection>h3{letter-spacing:0;text-transform:none;color:var(--text-mid);align-items:center;gap:8px;margin:0 0 15px;font-size:16px;font-weight:600;display:flex}.app .fsection>h3 .ms{color:var(--accent);font-size:17px}.app .field{margin-bottom:15px}.app .field:last-child{margin-bottom:0}.app .field>label{color:var(--text);margin-bottom:7px;font-size:15px;font-weight:600;display:block}.app .help{color:var(--text-dim);margin-top:7px;font-size:12.5px;line-height:1.5}.app .help.err{color:var(--err)}.app .inp,.app .sel{border:1px solid var(--line);background:var(--surface);width:100%;height:44px;color:var(--text);font-family:var(--ui);border-radius:12px;outline:none;padding:0 14px;font-size:16px;transition:border-color .14s,box-shadow .14s}.app textarea.inp{resize:vertical;height:auto;min-height:110px;padding:11px 13px;line-height:1.5}.app .inp.mono{font-family:var(--mono);font-size:14px}.app .inp:focus,.app .sel:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.app .inp::placeholder{color:var(--text-dim)}.app .selwrap{position:relative}.app .selwrap .ms{pointer-events:none;color:var(--text-dim);font-size:20px;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.app .sel{appearance:none;cursor:pointer;padding-right:38px}.app .two{grid-template-columns:1fr 1fr;gap:13px;display:grid}.app .grid3{grid-template-columns:2fr 1fr;gap:13px;display:grid}.app .choice{flex-direction:column;gap:9px;display:flex}.app .opt{border:1px solid var(--line);cursor:pointer;background:var(--bg);border-radius:12px;gap:12px;padding:13px 14px;transition:border-color .14s,background .14s;display:flex}.app .opt.sel{border-color:var(--accent);background:var(--accent-soft)}.app .opt .rad{border:2px solid var(--line-strong);border-radius:50%;flex:none;place-items:center;width:18px;height:18px;margin-top:1px;display:grid}.app .opt.sel .rad{border-color:var(--accent)}.app .opt.sel .rad:after{content:"";background:var(--accent);border-radius:50%;width:9px;height:9px}.app .opt .ot{font-size:14.5px;font-weight:600}.app .opt .od{color:var(--text-dim);margin-top:3px;font-size:13px;line-height:1.45}.app .taglist{flex-wrap:wrap;gap:8px;display:flex}.app .tagk{font-family:var(--mono);background:var(--accent-soft);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--text-mid);align-items:center;gap:7px;padding:5px 11px;font-size:13px;display:inline-flex}.app .tagk .x{cursor:pointer;color:var(--text-dim);place-items:center;display:grid}.app .tagk .x .ms{font-size:15px}.app .tagk.add{color:var(--accent);cursor:pointer;font-family:var(--ui);background:0 0;border-style:dashed;font-weight:600}.app .row-toggle{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:12px 0;display:flex}.app .row-toggle:first-child{border-top:none;padding-top:0}.app .row-toggle .tl{font-size:14.5px;font-weight:500}.app .row-toggle .td{color:var(--text-dim);margin-top:2px;font-size:12.5px}.app .switch{background:var(--line-strong);cursor:pointer;border:none;border-radius:20px;flex:none;width:44px;height:26px;padding:0;transition:background .16s;position:relative}.app .switch.on{background:var(--accent)}.app .switch:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:left .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.app .switch.on:after{left:21px}.app .keyrow{border:1px solid var(--line);background:var(--bg);border-radius:12px;align-items:center;gap:10px;padding:11px 13px;display:flex}.app .keyrow .ms.k{color:var(--ok);font-size:19px}.app .keyrow .kt{flex:1;min-width:0}.app .keyrow .kt .l1{font-size:14px;font-weight:600}.app .keyrow .kt .l2{font-family:var(--mono);color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12.5px;overflow:hidden}.app .link{color:var(--accent);cursor:pointer;white-space:nowrap;font-size:13.5px;font-weight:600}.app .testrow{align-items:center;gap:12px;margin-top:4px;display:flex}.app .btn-ghost-sm{border:1px solid var(--line-strong);border-radius:var(--radius-pill);height:36px;color:var(--text-mid);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 15px;font-family:inherit;font-size:14px;font-weight:600;transition:color .14s,border-color .14s;display:inline-flex}.app .btn-ghost-sm:hover{color:var(--text);border-color:var(--line-strong)}.app .btn-ghost-sm .ms{font-size:17px}.app .test-ok{color:var(--ok);align-items:center;gap:5px;font-size:13.5px;font-weight:600;display:inline-flex}.app .test-ok .ms{font-size:17px}.app .thr{border-top:1px solid var(--line);align-items:center;gap:13px;padding:13px 0;display:flex}.app .thr:first-of-type{border-top:none;padding-top:2px}.app .thr .tlbl{flex:1}.app .thr .tlbl .l1{font-size:14.5px;font-weight:500}.app .thr .tlbl .l2{color:var(--text-dim);margin-top:2px;font-size:12.5px}.app .thr .lamp{border-radius:50%;flex:none;width:9px;height:9px}.app .thr .lamp.a{background:var(--warn);box-shadow:0 0 5px #e5a93a80}.app .thr .lamp.r{background:#e0524f;box-shadow:0 0 5px #e0524f80}.app .thr .num{flex:none;width:96px;position:relative}.app .thr .num input{border:1px solid var(--line);background:var(--bg);width:100%;height:38px;color:var(--text);font-family:var(--mono);border-radius:12px;outline:none;padding:0 30px 0 12px;font-size:14px}.app .thr .num input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.app .thr .num .pct{color:var(--text-dim);pointer-events:none;font-size:13px;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.app .danger{border:1px solid var(--line);background:var(--err-soft);border-radius:var(--radius);margin-top:16px;padding:16px 18px}.app .danger h3{letter-spacing:0;text-transform:none;color:var(--err);margin:0 0 6px;font-size:16px;font-weight:600}.app .danger p{color:var(--text-mid);margin:0 0 12px;font-size:13px;line-height:1.5}.app .btn-danger{border:1px solid var(--line-strong);border-radius:var(--radius-pill);height:40px;color:var(--err);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:600;transition:background .14s,border-color .14s;display:inline-flex}.app .btn-danger:hover{background:var(--err-soft);border-color:var(--err)}.app .btn-danger .ms{font-size:18px}.app .actionbar{z-index:10;padding:14px 0 calc(14px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:10px;margin-top:22px;display:flex;position:sticky;bottom:0}.app .actionbar .btn-ghost{border-color:var(--line-strong);border-radius:var(--radius-pill);height:40px;padding:0 18px;font-size:15px}.app .actionbar .btn-primary{border-radius:var(--radius-pill);height:40px;padding:0 20px;font-size:15px}.app .login-wrap{place-items:center;min-height:100%;padding:24px 0;display:grid}.app .login-card{background:var(--surface-2);border:1px solid var(--line);width:100%;max-width:380px;box-shadow:var(--shadow);text-align:center;border-radius:20px;padding:30px 26px}.app .login-card .mark{border-radius:16px;width:60px;height:60px;margin:0 auto 14px}.app .login-card .mark svg{width:40px;height:40px}.app .login-card h1{font-family:var(--serif);letter-spacing:0;margin:0;font-size:26px;font-weight:600}.app .login-card h1 .ai{color:var(--accent)}.app .login-card .tag{color:var(--text-dim);letter-spacing:.4px;text-transform:uppercase;margin-top:4px;font-size:12.5px}.app .login-card .btn-primary{justify-content:center;width:100%;height:44px;margin-top:20px;font-size:15px}.app .login-card .btn-ghost{border-color:var(--line);justify-content:center;width:100%;height:40px;margin-top:10px}.app .login-card .setup{text-align:left;gap:11px;margin-top:18px;display:grid}.app .login-card .setup .field{margin:0}.app .login-card .err{color:var(--err);margin-top:12px;font-size:13.5px}.app .nrow.static{cursor:default}.app .nrow.static:hover{background:var(--surface)}.app .filterbar{margin:0 2px 13px}.app .form-actions{margin-top:14px}.app .panel-sec[hidden]{display:none}.app .footer{text-align:center;color:var(--text-dim);letter-spacing:.3px;margin-top:30px;font-size:12.5px}.app .srv-tag{font-family:var(--mono);color:var(--text-mid);background:var(--accent-soft);border:1px solid var(--line);border-radius:7px;align-items:center;gap:6px;padding:4px 9px;font-size:12.5px;font-weight:500;display:inline-flex}.app .srv-tag .ms{color:var(--accent);font-size:15px}.app .seg{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-pill);gap:3px;padding:3px;display:flex}.app .seg button{height:36px;color:var(--text-mid);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex:1;font-family:inherit;font-size:15px;font-weight:500;transition:background .14s,color .14s}.app .seg button.sel{background:var(--accent);color:var(--accent-ink)}.app .seg button:disabled{opacity:.4;cursor:not-allowed}.app .toggle-card{border:1px solid var(--line);background:var(--bg);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:11px;padding:14px;display:flex}.app .toggle-card:last-child{margin-bottom:0}.app .toggle-card .tt{font-size:14.5px;font-weight:600}.app .toggle-card .td{color:var(--text-dim);margin-top:3px;font-size:12.5px;line-height:1.45}.app .toggle-card .switch{margin-top:1px}.app .toggle-card.hot{border-color:var(--err);background:var(--err-soft)}.app .switch.danger.on{background:var(--err)}.app .note{border-radius:var(--radius-inset);align-items:flex-start;gap:9px;margin-top:13px;padding:11px 13px;font-size:14px;line-height:1.5;display:flex}.app .note .ms{flex:none;margin-top:1px;font-size:18px}.app .note.warn{background:var(--warn-soft);color:var(--text)}.app .note.warn .ms{color:var(--warn)}.app .note.info{background:var(--accent-soft);color:var(--text)}.app .note.info .ms{color:var(--accent)}.app .note.danger{background:var(--err-soft);color:var(--text)}.app .note.danger .ms{color:var(--err)}.app .adv-head{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;width:100%;box-shadow:var(--shadow-card);text-align:left;align-items:center;gap:10px;margin-top:16px;padding:15px 18px;font-family:inherit;display:flex}.app .adv-head .ms.lead{color:var(--accent);font-size:18px}.app .adv-head .t{flex:1}.app .adv-head .t .l1{font-size:14.5px;font-weight:600}.app .adv-head .t .l2{color:var(--text-dim);margin-top:2px;font-size:12.5px}.app .adv-head .chev{color:var(--text-dim);transition:transform .18s}.app .adv-head[aria-expanded=true] .chev{transform:rotate(180deg)}.app .adv-body[hidden]{display:none}.chatscreen{width:100%;max-width:880px;height:var(--vvh,100dvh);background:var(--bg);color:var(--text);font-family:var(--ui);flex-direction:column;margin:0 auto;font-size:16px;line-height:1.4;display:flex;overflow:hidden}.chatscreen .chead{z-index:20;background:var(--bg);flex:none;align-items:center;gap:10px;padding:10px 14px 8px;display:flex}.chatscreen .chead .back,.chatscreen .chead .hbtn{border:1px solid var(--line);background:var(--surface);width:40px;height:40px;color:var(--text);cursor:pointer;border-radius:50%;flex:none;place-items:center;display:grid}.chatscreen .chead .back:hover,.chatscreen .chead .hbtn:hover{border-color:var(--line-strong)}.chatscreen .chead .hbtn.stop:hover{color:var(--err);background:var(--err-soft)}.chatscreen .chead .back .ms{font-size:20px}.chatscreen .chead .hbtn .ms{font-size:19px}.chatscreen .chead .ti{text-align:center;flex:1;min-width:0}.chatscreen .chead .ti .t1{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600;overflow:hidden}.chatscreen .chead .ti .t2{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:14px;overflow:hidden}.chatscreen .chead .ti .t2 .wait{color:var(--accent);font-weight:600}.chatscreen .chead .ti .t2 .run{color:var(--ok);font-weight:600}.chatscreen .chead .ti .t2 .off,.chatscreen .chead .ti .t2 .mdrift{color:var(--warn);font-weight:600}.chatscreen .chat{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-height:0;padding:10px 16px 18px;display:flex;overflow:hidden auto}.chatscreen .chat>*{flex:none;min-width:0;max-width:100%}.chatscreen .sys{color:var(--text-dim);white-space:pre-wrap;word-break:break-word;padding:4px 0;font-size:13px}.chatscreen .sys .mono{color:var(--text-mid)}.chatscreen .u-msg{background:var(--bubble);border:1px solid var(--bubble-line);border-radius:var(--radius-bubble);white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;align-self:flex-end;width:fit-content;max-width:81%;margin:14px 0 6px;padding:14px 17px;font-size:20px;line-height:1.4}.chatscreen .u-msg.pending{opacity:.55}.chatscreen .a-msg{font-family:var(--serif);color:var(--text);overflow-wrap:anywhere;word-break:break-word;margin:12px 0 16px;font-size:20px;line-height:1.5}.chatscreen .md-p{white-space:pre-wrap;margin:8px 0}.chatscreen .md-h{color:var(--text);margin:14px 0 6px;font-weight:600;line-height:1.3}.chatscreen .md-h1{font-size:24px}.chatscreen .md-h2{font-size:21px}.chatscreen .md-h3{font-size:20px}.chatscreen .md-ul{margin:8px 0;padding-left:24px}.chatscreen .md-ul li{margin:3px 0}.chatscreen .md-quote{border-left:2px solid var(--line-strong);color:var(--text-mid);margin:8px 0;padding-left:12px}.chatscreen .md-code{font-family:var(--mono);background:var(--sema-bg);border-radius:6px;padding:1px 6px;font-size:14px}.chatscreen .md-pre{background:var(--sema-bg);border:1px solid var(--line);border-radius:var(--radius-inset);max-width:100%;margin:10px 0;padding:12px 14px;overflow:auto}.chatscreen .md-pre code{font-family:var(--mono);white-space:pre;color:var(--text);font-size:13px}.chatscreen .tool{margin:2px 0}.chatscreen .tool .trow{cursor:pointer;color:var(--text-mid);align-items:center;gap:8px;min-width:0;padding:6px 0;display:flex}.chatscreen .tool .trow .ms{color:var(--text-dim);flex:none;font-size:16px}.chatscreen .tool .trow .tlbl{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:16px;overflow:hidden}.chatscreen .tool.running .trow .tlbl{background:linear-gradient(90deg, var(--text-mid) 30%, var(--text-dim) 50%, var(--text-mid) 70%);color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:1.6s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.chatscreen .tool.err .trow .tlbl{color:var(--err)}.chatscreen .tool .tsum{color:var(--text-dim);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;padding:0 0 4px 24px;font-size:13px;overflow:hidden}.chatscreen .tool .tsum.err{color:var(--err)}.chatscreen .tool .tbody{margin:4px 0 8px 24px}.chatscreen .tool .tbody pre{font-family:var(--mono);color:var(--text-mid);background:var(--sema-bg);border:1px solid var(--line);border-radius:var(--radius-inset);white-space:pre-wrap;word-break:break-word;-webkit-overflow-scrolling:touch;max-height:340px;margin:0;padding:10px 12px;font-size:13px;line-height:1.5;overflow:auto}.chatscreen .tool .tbody pre.err{color:var(--err)}.chatscreen .tool .tdiff{font-family:var(--mono);background:var(--sema-bg);border:1px solid var(--line);border-radius:var(--radius-inset);-webkit-overflow-scrolling:touch;max-height:340px;padding:8px 10px;font-size:13px;line-height:1.6;overflow:auto}.chatscreen .tool .tdiff .ln{white-space:pre-wrap;word-break:break-word}.chatscreen .tool .tdiff .ln.del{color:#e08a8a}.chatscreen .tool .tdiff .ln.add{color:#74c6a0}[data-theme=light] .chatscreen .tool .tdiff .ln.del{color:#b4453f}[data-theme=light] .chatscreen .tool .tdiff .ln.add{color:#1e7e50}.chatscreen .spark{width:10px;height:10px;color:var(--accent);flex:none;animation:1s ease-in-out infinite sparkpulse}@keyframes sparkpulse{50%{opacity:.5;transform:scale(.7)}}.chatscreen .progress{align-items:center;gap:9px;padding:8px 0;display:flex}.chatscreen .progress .ptext{color:var(--text-mid);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:14px;overflow:hidden}.chatscreen .turn-result{color:var(--text-dim);margin:8px 0;font-size:13px}.chatscreen .turn-result.err{color:var(--err)}.chatscreen .resolved{color:var(--ok);padding:2px 0;font-size:13px}.chatscreen .resolved.denied{color:var(--err)}.chatscreen .resolved .ms{vertical-align:-2px;margin-right:4px;font-size:15px}.chatscreen .cmd-note{white-space:pre-wrap;color:var(--text-mid);background:var(--sema-bg);border:1px solid var(--line);border-radius:var(--radius-inset);margin:10px 0;padding:10px 14px;font-size:14px}.chatscreen .approval{border:1px solid var(--accent);border-radius:var(--radius);background:var(--bg);margin:12px 0;overflow:hidden}.chatscreen .approval .ah{align-items:center;gap:10px;padding:14px 16px 6px;display:flex}.chatscreen .approval .ah .ms{color:var(--accent);flex:none;font-size:20px}.chatscreen .approval .ah .at{color:var(--text);font-size:16px;font-weight:600}.chatscreen .approval .ah .as{color:var(--text-dim);word-break:break-all;margin-top:1px;font-size:13px}.chatscreen .approval .ab{padding:6px 16px 12px}.chatscreen .approval .tgt{font-family:var(--mono);color:var(--text);word-break:break-all;align-items:center;gap:7px;margin-bottom:9px;font-size:14px;display:flex}.chatscreen .approval .tgt .ms{color:var(--text-dim);flex:none;font-size:15px}.chatscreen .approval pre{background:var(--sema-bg);border:1px solid var(--line);border-radius:var(--radius-inset);font-family:var(--mono);white-space:pre-wrap;word-break:break-word;max-height:280px;margin:0;padding:10px 12px;font-size:13px;overflow:auto}.chatscreen .approval .diff{border:1px solid var(--line);border-radius:var(--radius-inset);font-family:var(--mono);background:var(--sema-bg);font-size:13px;line-height:1.65;overflow-x:auto}.chatscreen .approval .diff .ln{box-sizing:border-box;white-space:pre;width:max-content;min-width:100%;padding:1px 10px;display:block}.chatscreen .approval .diff .del{color:#e08a8a;background:#e2727221}.chatscreen .approval .diff .add{color:#74c6a0;background:#4fb58524}[data-theme=light] .chatscreen .approval .diff .del{color:#b4453f}[data-theme=light] .chatscreen .approval .diff .add{color:#1e7e50}.chatscreen .approval .af{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:10px 16px 14px;display:flex}.chatscreen .approval .bio{color:var(--text-dim);flex:100%;align-items:center;gap:6px;margin-right:auto;font-size:13px;display:inline-flex}.chatscreen .approval .bio .ms{color:var(--text-mid);font-size:16px}.chatscreen .btn-deny{border:1px solid var(--line-strong);border-radius:var(--radius-pill);height:40px;color:var(--text);font-family:var(--ui);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:0 18px;font-size:15px;font-weight:600;transition:color .14s,background .14s,border-color .14s;display:inline-flex}.chatscreen .btn-deny:hover{color:var(--err);background:var(--err-soft);border-color:var(--err)}.chatscreen .btn-allow{border-radius:var(--radius-pill);background:var(--accent);height:40px;color:var(--accent-ink);font-family:var(--ui);cursor:pointer;border:none;align-items:center;gap:6px;padding:0 20px;font-size:15px;font-weight:600;display:inline-flex}.chatscreen .btn-allow:hover{filter:brightness(1.08)}.chatscreen .btn-deny:disabled,.chatscreen .btn-allow:disabled{opacity:.5;cursor:default}.chatscreen .btn-allow .ms,.chatscreen .btn-deny .ms{font-size:16px}.chatscreen .approval.decided{opacity:.6;border-color:var(--line)}.chatscreen .approval.decided .btn-allow,.chatscreen .approval.decided .btn-deny{pointer-events:none;opacity:.5}.chatscreen .codebar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.chatscreen .codebar .cf{color:var(--text-dim);font-size:13px}.chatscreen .wbtn{border:1px solid var(--line);border-radius:var(--radius-pill);height:26px;color:var(--text-dim);font-family:var(--ui);cursor:pointer;background:0 0;align-items:center;gap:4px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.chatscreen .wbtn:hover{color:var(--text);border-color:var(--line-strong)}.chatscreen .wbtn .ms{font-size:14px}.chatscreen .tool.wide,.chatscreen .approval.wide{align-self:stretch;max-width:100%}.chatscreen .note.info{border-radius:var(--radius-inset);background:var(--accent-soft);color:var(--text);align-items:flex-start;gap:9px;padding:10px 13px;font-size:14px;line-height:1.5;display:flex}.chatscreen .note.info .ms{color:var(--accent);flex:none;font-size:17px}.chatscreen .note.danger{border-radius:var(--radius-inset);background:var(--err-soft);max-width:880px;color:var(--err);align-items:flex-start;gap:8px;margin:0 auto;padding:10px 13px;font-size:14px;line-height:1.5;display:flex}.chatscreen .note.danger .ms{flex:none;font-size:16px}.chatscreen .note.warn.modeldrift{background:var(--warn-soft);color:var(--warn);flex:none;align-items:flex-start;gap:8px;padding:9px 16px;font-size:14px;line-height:1.45;display:flex}.chatscreen .note.warn.modeldrift .ms{flex:none;font-size:18px}.chatscreen .note.warn.modeldrift strong{color:var(--text);font-weight:600}.chatscreen .barwrap{background:var(--bg);padding:6px 12px calc(10px + env(safe-area-inset-bottom));flex:none;position:relative}.chatscreen .barwrap:before{content:"";background:linear-gradient(to top, var(--bg), transparent);pointer-events:none;height:24px;position:absolute;top:-24px;left:0;right:0}.chatscreen .barin{border:1px solid var(--line);border-radius:var(--radius-composer);background:var(--surface);width:100%;max-width:880px;box-shadow:var(--elev-shadow);flex-direction:column;gap:2px;margin:0 auto;padding:6px 8px 8px;display:flex}.chatscreen .barin:focus-within{border-color:var(--line-strong)}.chatscreen .barin .tx{width:100%;min-height:30px;max-height:120px;color:var(--text);font-family:var(--ui);resize:none;background:0 0;border:none;outline:none;padding:8px 10px 4px;font-size:17px;line-height:1.4}.chatscreen .barin .tx::placeholder{color:var(--text-dim)}.chatscreen .barin .brow{align-items:center;gap:8px;padding:0 2px;display:flex}.chatscreen .barin .mode{border-radius:var(--radius-pill);background:var(--panel-2);height:34px;color:var(--text);cursor:pointer;border:none;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:16px;font-weight:500;display:inline-flex}.chatscreen .barin .mode .ms{color:var(--text-mid);font-size:17px}.chatscreen .barin .spacer{flex:1}.chatscreen .barin .send{background:var(--accent);width:36px;height:36px;color:var(--accent-ink);cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;display:grid}.chatscreen .barin .send:hover{filter:brightness(1.08)}.chatscreen .barin .send:disabled{opacity:.35;cursor:default}.chatscreen .barin .send .ms{font-size:20px}.chatscreen .barin .stop{background:var(--text);cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;display:grid}.chatscreen .barin .stop i{background:var(--bg);border-radius:3px;width:12px;height:12px;display:block}@media (pointer:coarse){.app input,.app textarea,.app select{font-size:16px!important}}.bottomnav{z-index:40;background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 24px #00000038}[data-theme=light] .bottomnav{box-shadow:0 -6px 24px #0d1e3014}.bottomnav .inner{max-width:540px;margin:0 auto;display:flex}.bottomnav .navitem{color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;padding:9px 0;font-family:inherit;transition:color .14s;display:flex;position:relative}.bottomnav .navitem .ms{font-size:24px}.bottomnav .navitem .lab{letter-spacing:.2px;font-size:12px;font-weight:500}.bottomnav .navitem[aria-current=true]{color:var(--accent)}.bottomnav .navitem .nbadge{color:#fff;text-align:center;min-width:17px;height:17px;font-size:11.5px;font-weight:700;line-height:17px;font-family:var(--mono);border:2px solid var(--surface);background:#c8443f;border-radius:9px;padding:0 4px;position:absolute;top:4px;left:calc(50% + 4px)}.reveal{opacity:0;animation:.5s cubic-bezier(.2,.7,.2,1) forwards rise;transform:translateY(8px)}@keyframes rise{to{opacity:1;transform:none}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.chatscreen .tool.running .trow .tlbl{background:0 0;-webkit-background-clip:initial;background-clip:initial;color:var(--text-mid)}}@media (width<=720px){.app{padding:0 14px calc(84px + env(safe-area-inset-bottom))}.app .brand .sub,.app .bar .btn-primary span.lbl{display:none}.app .bar .btn-primary{padding:0 11px}.app .readout{grid-template-columns:1fr 1fr}.app .srow .right{gap:10px}.app .srow .model,.app .srow .ago{display:none}.app .srow .stat{width:auto}.app .btn-close-all .lbl,.app .ntools .lbl{display:none}.app .nrow .nact{opacity:1}.app .nrow .desc{max-width:46vw}.app .phead{flex-direction:column}.app .phead .actions{width:100%}.app .phead .btn-primary{justify-content:center;width:100%}}@media (width<=560px){.app .two,.app .grid3{grid-template-columns:1fr}}@media (width<=420px){.app .grid{grid-template-columns:1fr}}.app .usenote{color:var(--text-dim);max-width:640px;margin:4px 0 14px;font-size:13.5px;line-height:1.5}.app .usenote b{color:var(--text-mid);font-weight:600}.app .usegrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.app .usecard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 15px}.app .usecard .ul{color:var(--text-dim);text-transform:none;letter-spacing:0;font-size:13px;font-weight:400}.app .usecard .un{font-family:var(--mono);color:var(--text);font-feature-settings:"tnum" 1;margin-top:6px;font-size:26px;font-weight:600}.app .usecard .us{color:var(--text-mid);margin-top:2px;font-size:13px}.app .usecard .ud{font-family:var(--mono);color:var(--text-dim);margin-top:8px;font-size:12px;line-height:1.55}.app .useh{color:var(--text-dim);margin:22px 0 10px;font-size:16px;font-weight:400}.app .usetable{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.app .userow{background:var(--surface);align-items:center;gap:12px;padding:11px 15px;display:flex}.app .userow+.userow{border-top:1px solid var(--line)}.app .userow .um{min-width:0;font-family:var(--mono);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13.5px;overflow:hidden}.app .userow .ut{font-family:var(--mono);color:var(--text-mid);flex:none;font-size:13px}.app .userow .uc{font-family:var(--mono);color:var(--accent);text-align:right;flex:none;min-width:64px;font-size:13.5px}.app .userow .usn{color:var(--text-dim);text-align:right;flex:none;min-width:56px;font-size:12.5px}@media (width<=480px){.app .userow .usn{display:none}}.app .planbox{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:18px;padding:16px}.app .planh{color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;font-size:14px;font-weight:600;display:flex}.app .planpill{font-family:var(--mono);color:var(--accent);background:var(--accent-soft);border-radius:6px;padding:2px 7px;font-size:11.5px;font-weight:600}.app .planrow{margin-top:14px}.app .planrow:first-of-type{margin-top:0}.app .planrow .pl{color:var(--text-mid);justify-content:space-between;align-items:baseline;margin-bottom:5px;font-size:13.5px;display:flex}.app .planrow .pl .pp{font-family:var(--mono);color:var(--text);font-size:16px;font-weight:600}.app .planrow .pbar{border-radius:var(--radius-pill);background:var(--panel-2);height:6px;overflow:hidden}.app .planrow .pbar i{background:var(--accent);border-radius:var(--radius-pill);height:100%;transition:width .4s;display:block}.app .planrow .pbar i.warn{background:var(--warn)}.app .planrow .pbar i.hot{background:var(--err)}.app .planrow .pr{color:var(--text-dim);margin-top:4px;font-size:12.5px}.app .ccrow{text-align:left;background:var(--surface);border:1px solid var(--line);cursor:pointer;width:100%;color:var(--text);border-radius:12px;align-items:center;gap:11px;padding:11px 13px;font-family:inherit;display:flex}.app .ccrow:hover{border-color:var(--line-strong)}.app .ccrow:disabled{opacity:.55;cursor:default}.app .ccrow .cci{color:var(--text-dim);flex:none;font-size:19px}.app .ccrow .ccm{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.app .ccrow .cct{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;overflow:hidden}.app .ccrow .ccs{color:var(--text-dim);font-size:12.5px}.app .ccrow .ccid{font-family:var(--mono)}.app .ccrow .ccbadge{font-family:var(--mono);letter-spacing:.4px;background:var(--panel-2);color:var(--text-mid);vertical-align:1px;border-radius:5px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:700;display:inline-block}.app .ccrow .ccbadge.p{background:var(--accent-soft);color:var(--accent)}.app .ccrow .ccgo{color:var(--accent);flex:none;font-size:20px}.form .vademecum{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;margin-top:14px;padding:14px 16px}.form .vademecum ol{color:var(--text-mid);margin:0 0 0 18px;padding:0;font-size:14px;line-height:1.65}.form .vademecum li{margin:5px 0}.form .vademecum code{font-family:var(--mono);background:var(--sema-bg);color:var(--text);border-radius:5px;padding:1px 6px;font-size:13px}.form .cmdbox{align-items:flex-start;gap:8px;margin:10px 0;display:flex}.form .cmdbox pre{min-width:0;font-family:var(--mono);background:var(--sema-bg);border:1px solid var(--line-strong);white-space:pre-wrap;word-break:break-all;color:var(--text);border-radius:8px;flex:1;margin:0;padding:10px 12px;font-size:12.5px;line-height:1.5}.chatscreen .chat{overflow-x:hidden}.chatscreen .u-msg,.chatscreen .a-msg,.chatscreen .md-p,.chatscreen .turn-result,.chatscreen .cmd-note,.chatscreen .md-h,.chatscreen .md-ul li,.chatscreen .md-quote,.chatscreen .md-code{overflow-wrap:anywhere;word-break:break-word}.chatscreen .md-pre{max-width:100%;overflow-x:auto}
