@import "https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=JetBrains+Mono:wght@300;400;500;600&display=swap";:root{--primary-green:#00a86b;--dark-green:#085;--light-green:#e8f5e9;--hover-green:#00c853;--sidebar-dark:#1a1d23;--sidebar-hover:#2a2d33;--bg-light:#f8f9fa;--white:#fff;--bg-base:var(--bg-light);--bg-surface:var(--white);--bg-elevated:var(--white);--bg-overlay:#f1f3f5;--bg-hover:#f1f3f5;--border-subtle:#e9ecef;--border-muted:#dee2e6;--border-bright:#ced4da;--text-primary:#2c3e50;--text-secondary:#6c757d;--text-muted:#9aa5b1;--text-dim:#ced4da;--cyan:var(--primary-green);--cyan-dim:#00a86b1a;--cyan-glow:#00a86b38;--cyan-text:var(--dark-green);--amber:#ff6b35;--amber-dim:#ff6b351f;--amber-glow:#ff6b3540;--amber-text:#e85d2a;--slate:#6c757d;--slate-dim:#6c757d1f;--font-ui:"Syne", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--t-fast:.12s ease;--t-med:.22s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:var(--font-ui);color:var(--text-primary);background-color:var(--bg-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(70% 60% at 50% 0,#00a86b0f 0%,#0000 70%),radial-gradient(50% 50% at 100% 100%,#00a86b0a 0%,#0000 60%),radial-gradient(circle,#2c3e500f 1px,#0000 1px);background-size:100% 100%,100% 100%,28px 28px;background-attachment:fixed;font-size:14px;line-height:1.55}.layout{height:100vh;transition:grid-template-columns var(--t-med);grid-template-rows:100vh;grid-template-columns:280px 1fr 320px;display:grid;overflow:hidden}.layout.alerts-collapsed{grid-template-columns:280px 1fr 52px}.main{border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);flex-direction:column;display:flex;overflow:hidden}.sidebar{--text-primary:#e6eaf0;--text-secondary:#a9b2bd;--text-muted:#6b7280;--bg-elevated:#23262d;--bg-overlay:#23262d;--bg-hover:var(--sidebar-hover);--border-subtle:#2a2d33;--border-muted:#33373e;--border-bright:#3e434b;--cyan:var(--hover-green);--cyan-text:var(--hover-green);background:var(--sidebar-dark);border-right:1px solid var(--sidebar-hover);scrollbar-width:thin;scrollbar-color:var(--border-muted) transparent;flex-direction:column;gap:0;padding:0;display:flex;overflow-y:auto}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:0 0}.sidebar::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:2px}.sidebar:before{content:"UPTIME AGENT";letter-spacing:.22em;color:var(--cyan);text-transform:uppercase;border-bottom:1px solid var(--border-subtle);background:linear-gradient(135deg,#00c8531a,#0000);padding:20px 20px 16px;font-size:11px;font-weight:800;display:block}.sidebar h3{font-family:var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);border-top:1px solid var(--border-subtle);flex-shrink:0;padding:18px 20px 8px;font-size:10px;font-weight:700}.sidebar h3:first-of-type{border-top:none}.url-list-toggle{cursor:pointer;width:100%;font-family:var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);text-align:left;background:0 0;border:none;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:18px 20px 8px;font-size:10px;font-weight:700;display:flex}.url-list-toggle:hover{color:var(--text-primary)}.url-list-chevron{font-size:12px;line-height:1;transition:transform .18s;transform:rotate(-90deg)}.url-list-chevron-open{transform:rotate(0)}.nav{flex-direction:column;flex-shrink:0;gap:4px;padding:12px;display:flex}.nav-item{text-align:left;width:100%;color:inherit;cursor:pointer;transition:background var(--t-fast), border-color var(--t-fast);background:0 0;border:1px solid #0000;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.nav-item:hover{background:var(--bg-hover)}.nav-item-active{background:var(--cyan-dim);border-color:var(--cyan)}.nav-icon{opacity:.75;flex-shrink:0;width:16px;height:16px}.nav-item:hover .nav-icon,.nav-item-active .nav-icon{opacity:1}.nav-text{flex-direction:column;gap:2px;min-width:0;display:flex}.nav-text strong{font-family:var(--font-mono);color:var(--cyan-text);letter-spacing:.02em;font-size:12px;font-weight:600}.nav-text span{color:var(--text-secondary);font-size:11px;line-height:1.4}.capabilities{padding:0 12px 8px;list-style:none}.capabilities li{transition:background var(--t-fast);border-radius:6px;flex-direction:column;gap:2px;margin-bottom:2px;padding:8px 10px;display:flex}.capabilities li:hover{background:var(--bg-hover)}.capabilities li strong{font-family:var(--font-mono);color:var(--cyan-text);letter-spacing:.02em;font-size:11px;font-weight:600}.capabilities li span{color:var(--text-secondary);font-size:12px;line-height:1.4}.url-search{background:var(--bg-elevated);border:1px solid var(--border-muted);width:calc(100% - 24px);color:var(--text-primary);font-family:var(--font-ui);border-radius:6px;flex-shrink:0;margin:0 12px 8px;padding:7px 10px;font-size:12px;display:block}.url-search::placeholder{color:var(--text-muted)}.url-search:focus{border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}.url-list{scrollbar-width:thin;scrollbar-color:var(--border-muted) transparent;flex:auto;min-height:140px;padding:0 12px 8px;list-style:none;overflow-y:auto}.url-list::-webkit-scrollbar{width:4px}.url-list::-webkit-scrollbar-track{background:0 0}.url-list::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:2px}.url-list-empty{font-family:var(--font-ui);color:var(--text-muted);padding:7px 10px;font-size:12px}.url-list li{transition:background var(--t-fast), border-color var(--t-fast);border:1px solid #0000;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px;padding:7px 10px;display:flex}.url-list li:hover{background:var(--bg-hover);border-color:var(--border-muted)}.url-list-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.url-list-name{font-family:var(--font-mono);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.url-list-href{font-family:var(--font-mono);color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.url-list li button{color:var(--text-muted);cursor:pointer;width:22px;height:22px;transition:color var(--t-fast), background var(--t-fast);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:flex}.url-list li button:hover{color:var(--amber);background:var(--amber-dim)}.url-list li button[data-tip]{position:relative}.url-list li button[data-tip]:after{content:attr(data-tip);background:var(--bg-elevated);border:1px solid var(--border-muted);color:var(--text-secondary);font-family:var(--font-ui);letter-spacing:.04em;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--t-fast);z-index:10;border-radius:4px;padding:4px 8px;font-size:10px;position:absolute;top:50%;right:calc(100% + 8px);transform:translateY(-50%);box-shadow:0 2px 8px #00000059}.url-list li button[data-tip]:hover:after,.url-list li button[data-tip]:focus-visible:after{opacity:1}.url-threshold{font-family:var(--font-mono);color:var(--text-muted);font-size:11px}.url-threshold-edit{align-items:center;gap:12px;margin-top:4px;display:flex}.url-threshold-edit input{border:1px solid var(--border-muted);background:var(--bg-elevated);width:88px;color:var(--text-primary);font-family:var(--font-mono);border-radius:6px;padding:3px 6px;font-size:11px}.url-threshold-edit button{border:1px solid var(--border-muted);background:var(--cyan-dim);color:var(--cyan-text);cursor:pointer;border-radius:6px;padding:3px 8px;font-size:11px}.url-list-actions{flex-shrink:0;gap:4px;display:inline-flex}.add-url{flex-direction:column;flex-shrink:0;gap:6px;padding:8px 12px 20px;display:flex}.add-url input{background:var(--bg-elevated);border:1px solid var(--border-muted);width:100%;color:var(--text-primary);font-family:var(--font-ui);transition:border-color var(--t-fast), box-shadow var(--t-fast);border-radius:6px;outline:none;padding:8px 10px;font-size:13px}.add-url input::placeholder{color:var(--text-muted)}.add-url input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}.add-url button{background:var(--cyan-dim);border:1px solid var(--cyan);color:var(--cyan);font-family:var(--font-ui);letter-spacing:.06em;cursor:pointer;transition:background var(--t-fast), box-shadow var(--t-fast), color var(--t-fast);border-radius:6px;padding:8px 14px;font-size:12px;font-weight:600}.add-url button:hover{background:var(--cyan-glow);box-shadow:0 0 12px var(--cyan-dim);color:#fff}.chat-panel{background:0 0;flex-direction:column;height:100%;display:flex;overflow:hidden}.chat-header{border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb3;justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.chat-title{letter-spacing:.2em;color:var(--text-secondary);text-transform:uppercase;font-size:11px;font-weight:700}.chat-header-right{align-items:center;gap:10px;display:flex}.theme-toggle{border:1px solid var(--border-muted);background:var(--bg-elevated);cursor:pointer;width:30px;height:30px;transition:border-color var(--t-fast), background var(--t-fast);border-radius:8px;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.theme-toggle:hover{border-color:var(--cyan);background:var(--bg-hover)}.conversation-label{letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);padding:12px 24px 0;font-size:10px;font-weight:700}.messages{scrollbar-width:thin;scrollbar-color:var(--border-muted) transparent;flex-direction:column;flex:1;gap:12px;padding:20px 24px;display:flex;overflow-y:auto}.messages::-webkit-scrollbar{width:4px}.messages::-webkit-scrollbar-track{background:0 0}.messages::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:2px}@keyframes bubble-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.bubble{border:1px solid #0000;border-radius:10px;max-width:80%;padding:12px 16px;font-size:14px;line-height:1.6;animation:.2s both bubble-in}.bubble-user{background:var(--light-green);color:var(--text-primary);border-color:#00a86b40;border-bottom-right-radius:2px;align-self:flex-end}.bubble-agent{background:var(--bg-elevated);border-color:var(--border-muted);color:var(--text-primary);border-bottom-left-radius:2px;align-self:flex-start}.bubble-agent p{margin-bottom:8px}.bubble-agent p:last-child{margin-bottom:0}.bubble-agent strong{color:var(--cyan-text)}.bubble-agent h1,.bubble-agent h2,.bubble-agent h3,.bubble-agent h4{font-family:var(--font-ui);color:var(--text-primary);margin:12px 0 6px;font-weight:700;line-height:1.3}.bubble-agent h1{font-size:16px}.bubble-agent h2{color:var(--cyan-text);font-size:15px}.bubble-agent h3{color:var(--cyan-text);font-size:14px}.bubble-agent h4{color:var(--text-secondary);font-size:13px}.bubble-agent ul,.bubble-agent ol{flex-direction:column;gap:3px;margin:6px 0 8px;padding-left:18px;display:flex}.bubble-agent li{color:var(--text-secondary);line-height:1.5}.bubble-agent li::marker{color:var(--cyan)}.bubble-agent code{font-family:var(--font-mono);background:var(--bg-overlay);border:1px solid var(--border-muted);color:var(--cyan);border-radius:4px;padding:1px 5px;font-size:12px}.bubble-agent pre{background:var(--bg-overlay);border:1px solid var(--border-muted);border-radius:6px;margin:8px 0;padding:12px;overflow-x:auto}.bubble-agent pre code{background:0 0;border:none;padding:0}@keyframes step-enter{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.step-trace{background:var(--bg-surface);border:1px solid var(--border-muted);border-left:3px solid var(--cyan);border-radius:8px;flex-direction:column;align-self:flex-start;gap:4px;max-width:90%;padding:12px 16px;list-style:none;display:flex}.step-trace li{font-family:var(--font-mono);color:var(--text-secondary);opacity:0;align-items:center;gap:8px;font-size:12px;animation:.25s both step-enter;display:flex}.step-trace li:before{content:"";background:var(--cyan);width:6px;height:6px;box-shadow:0 0 6px var(--cyan-glow);border-radius:50%;flex-shrink:0;animation:1.4s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.composer{border-top:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8f9fad9;gap:8px;padding:14px 24px 18px;display:flex}.composer input{background:var(--bg-elevated);border:1px solid var(--border-muted);color:var(--text-primary);font-family:var(--font-ui);transition:border-color var(--t-fast), box-shadow var(--t-fast);border-radius:8px;outline:none;flex:1;padding:10px 16px;font-size:14px;box-shadow:0 0 0 1px #00a86b4d,0 0 6px #00a86b38,0 0 14px #00a86b24,0 0 26px #00a86b12}.composer input::placeholder{color:var(--text-muted)}.composer input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim), 0 0 8px #00a86b57, 0 0 18px #00a86b38, 0 0 34px #00a86b1f}.composer input:disabled{opacity:.5;cursor:not-allowed}.composer button{background:var(--cyan-dim);border:1px solid var(--cyan);color:var(--cyan);font-family:var(--font-ui);letter-spacing:.04em;cursor:pointer;white-space:nowrap;transition:background var(--t-fast), box-shadow var(--t-fast), color var(--t-fast);border-radius:8px;padding:10px 20px;font-size:13px;font-weight:600}.composer button:hover:not(:disabled){background:var(--primary-green);box-shadow:0 0 16px var(--cyan-glow), 0 0 32px #00a86b26;color:#fff}.composer button:disabled{opacity:.4;cursor:not-allowed}.composer .send-btn{background:var(--primary-green);border:1px solid var(--primary-green);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:16px;display:flex}.composer .send-btn:hover:not(:disabled){background:var(--hover-green);border-color:var(--hover-green);box-shadow:0 0 16px var(--cyan-glow)}.chart-card{background:var(--bg-elevated);border:1px solid var(--border-muted);border-radius:8px;margin-top:10px;padding:14px 16px}.chart-card h4{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px;font-size:11px;font-weight:600}.chart-loading{min-height:120px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.06em;justify-content:center;align-items:center;font-size:12px;display:flex}.data-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);border:1px solid var(--border-muted);border-radius:6px;margin-top:10px;font-size:12px;overflow:hidden}.data-table th{background:var(--bg-overlay);color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--border-muted);padding:8px 12px;font-size:10px;font-weight:600}.data-table td{color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);padding:7px 12px}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--bg-hover);color:var(--text-primary)}.alerts-panel{background:var(--bg-surface);border-left:1px solid var(--border-subtle);scrollbar-width:thin;scrollbar-color:var(--border-muted) transparent;flex-direction:column;display:flex;overflow-y:auto}.alerts-panel::-webkit-scrollbar{width:4px}.alerts-panel::-webkit-scrollbar-track{background:0 0}.alerts-panel::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:2px}.stat-cards{flex-direction:column;gap:8px;padding:16px 14px 6px;display:flex}.stat-card{border:1px solid var(--border-muted);background:var(--bg-elevated);border-radius:8px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.stat-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.stat-value{font-family:var(--font-mono);color:var(--text-primary);font-size:24px;font-weight:600}.history-link{font-family:var(--font-mono);color:var(--cyan-text);margin:8px 14px 16px;font-size:12px;text-decoration:none;display:inline-block}.history-link:hover{text-decoration:underline}.alerts-panel h3{z-index:10;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:2px solid var(--amber);justify-content:space-between;align-items:center;gap:8px;padding:20px 18px 14px;font-size:10px;font-weight:700;display:flex;position:sticky;top:0}.alerts-filter{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);gap:6px;padding:12px 14px;display:flex}.alerts-filter-btn{border:1px solid var(--border-muted);background:var(--bg-elevated);color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.04em;cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast), color var(--t-fast);border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:6px 8px;font-size:11px;font-weight:600;display:inline-flex}.alerts-filter-btn:hover{border-color:var(--cyan);color:var(--cyan)}.alerts-filter-btn.active{border-color:var(--cyan);background:var(--cyan-dim);color:var(--cyan-text)}.alerts-filter-count{background:var(--border-muted);min-width:18px;height:18px;color:var(--text-secondary);border-radius:100px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;display:inline-flex}.alerts-filter-btn.active .alerts-filter-count{color:var(--cyan-text);background:#22d3ee40}.alerts-collapse-btn{border:1px solid var(--border-muted);background:var(--bg-elevated);width:26px;height:26px;color:var(--text-secondary);cursor:pointer;transition:border-color var(--t-fast), background var(--t-fast), color var(--t-fast);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex}.alerts-collapse-btn:hover{border-color:var(--cyan);color:var(--cyan);background:var(--cyan-dim)}.alerts-panel-collapsed{align-items:center;gap:16px;padding:14px 0;overflow:hidden}.alerts-panel-collapsed .alerts-collapse-btn{width:30px;height:30px}.alerts-rail{flex-direction:column;align-items:center;gap:12px;display:flex}.alerts-rail-label{font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--text-muted);writing-mode:vertical-rl;font-size:10px;font-weight:700;transform:rotate(180deg)}.alerts-rail-count{background:var(--amber-dim);min-width:24px;height:24px;color:var(--amber);font-family:var(--font-mono);border:1px solid #ff6b354d;border-radius:100px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:600;display:inline-flex}.alerts-panel ul{flex-direction:column;gap:6px;padding:10px;list-style:none;display:flex}.empty{color:var(--text-muted);text-align:center;padding:40px 20px;font-size:13px;font-style:italic}.incident{border:1px solid var(--border-subtle);background:var(--bg-elevated);transition:border-color var(--t-fast), background var(--t-fast);border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;animation:.2s both bubble-in;display:flex}.incident:hover{border-color:var(--border-bright);background:var(--bg-hover)}.incident strong{font-family:var(--font-mono);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.incident time{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.incident-url{font-family:var(--font-mono);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.incident-open{border-left:3px solid var(--amber);background:linear-gradient(90deg, var(--amber-dim), var(--bg-elevated))}.incident-open:hover{border-color:var(--amber);box-shadow:0 0 12px #ff6b3514}.incident-resolved{border-left:3px solid var(--slate);opacity:.75}.incident-resolved:hover{opacity:1}.badge{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:100px;align-items:center;gap:5px;width:fit-content;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.badge-open{background:var(--amber-dim);color:var(--amber);border:1px solid #ff6b354d}.badge-open:before{animation:1.2s ease-in-out infinite pulse-dot}.badge-resolved{background:var(--slate-dim);color:var(--slate);border:1px solid #6c757d4d}.type{font-family:var(--font-mono);color:var(--text-secondary);text-transform:lowercase;font-size:11px}.btn-resolve{border:1px solid var(--slate);color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.06em;cursor:pointer;transition:color var(--t-fast), border-color var(--t-fast), background var(--t-fast);background:0 0;border-radius:4px;align-self:flex-start;margin-top:4px;padding:3px 10px;font-size:10px;font-weight:600}.btn-resolve:hover:not(:disabled){color:var(--cyan);border-color:var(--cyan);background:var(--cyan-dim)}.btn-resolve:disabled{opacity:.4;cursor:not-allowed}.alerts-inline{flex-direction:column;gap:.4rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}html[data-theme=dark]{--bg-base:#0f1115;--bg-surface:#16191f;--bg-elevated:#1b1f27;--bg-overlay:#23262d;--bg-hover:#23262d;--border-subtle:#23262d;--border-muted:#2e333b;--border-bright:#3a404a;--text-primary:#e6eaf0;--text-secondary:#a9b2bd;--text-muted:#6b7280;--text-dim:#3a404a;--cyan-text:var(--hover-green)}html[data-theme=dark] body{background-image:radial-gradient(70% 60% at 50% 0,#00c8530f 0%,#0000 70%),radial-gradient(50% 50% at 100% 100%,#00c8530a 0%,#0000 60%),radial-gradient(circle,#e6eaf00d 1px,#0000 1px)}html[data-theme=dark] .chat-header{background:#0f1115b3}html[data-theme=dark] .composer{background:#0f1115d9}html[data-theme=dark] .bubble-user{color:var(--text-primary);background:#00c85324;border-color:#00c85352}
