:root{--bg: #0f1117;--surface: #1c1e2e;--surface-2: #252840;--border: #2d3050;--text: #e2e8f0;--muted: #94a3b8;--accent: #6366f1;--danger: #ef4444}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:system-ui,sans-serif;font-size:.9rem;line-height:1.5}h2{font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}h3{font-size:.85rem;font-weight:600}h4{font-size:.8rem;font-weight:600}.app-layout{display:grid;grid-template-rows:auto 1fr;grid-template-columns:minmax(260px,1fr) minmax(400px,2fr);height:100vh;row-gap:1rem;column-gap:0;padding:1rem}.app-header{grid-column:1 / -1;display:flex;align-items:center;gap:.75rem}.app-header h1{font-size:1.1rem;font-weight:700;color:var(--text)}.app-header .version{font-size:.75rem;color:var(--muted)}.left-col,.right-col{display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.right-col--conversation{overflow-y:hidden}.right-col--conversation>.ai-panel-card{flex:1;min-height:0;overflow:hidden}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.card-header{display:flex;align-items:center;justify-content:space-between}.right-col>.card,.ai-panel-card{border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}.ai-panel-title{display:flex;flex-direction:row;align-items:center;gap:.5rem;min-width:0}.ai-panel-incident-id{font-size:1rem;font-weight:700;color:var(--accent);white-space:nowrap;flex-shrink:0}.ai-panel-ref{font-size:.75rem;font-weight:600;font-family:monospace;color:var(--muted);white-space:nowrap;flex-shrink:0}.ai-panel-context{display:flex;align-items:baseline;gap:.4rem;min-width:0;overflow:hidden}.ai-panel-machine{font-size:.72rem;font-family:monospace;color:var(--muted);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-panel-issue{font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.context-form{display:flex;flex-direction:column;gap:.5rem}.context-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--muted)}input,textarea{background:var(--surface-2);border:1px solid var(--border);border-radius:4px;color:var(--text);padding:.4rem .6rem;font-size:.875rem;font-family:inherit;resize:vertical}input:focus,textarea:focus{outline:1px solid var(--accent)}input:disabled,textarea:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;border:none;border-radius:4px;padding:.45rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer;align-self:flex-start}.btn-primary:hover:not(:disabled){filter:brightness(1.1)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.status-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;padding:.15rem .5rem;border-radius:999px;color:#fff;letter-spacing:.04em}.step-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;padding:.1rem .45rem;border-radius:4px;color:#fff;letter-spacing:.03em;flex-shrink:0}.step-feed{display:flex;flex-direction:column;gap:.4rem}.step-item{display:flex;align-items:center;gap:.6rem;font-size:.8rem}.step-summary{color:var(--text)}.hypothesis-card{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:.65rem .75rem;display:flex;flex-direction:column;gap:.35rem}.hypothesis-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.hypothesis-desc{font-weight:500;font-size:.85rem}.hypothesis-pct{font-weight:700;font-size:.85rem;flex-shrink:0}.confidence-bar-bg{height:4px;background:var(--border);border-radius:2px}.confidence-bar-fill{height:4px;border-radius:2px;transition:width .4s}.hypothesis-evidence{font-size:.78rem;color:var(--muted)}.hypothesis-notes{font-size:.78rem;color:var(--muted);font-style:italic}.decision-card{background:var(--surface-2);border:1px solid #3b4066;border-radius:6px;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.decision-row{display:flex;flex-direction:column;gap:.2rem}.decision-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.decision-value{font-size:.875rem}.decision-value.action{color:#22c55e;font-weight:600}.decision-divider{height:1px;background:var(--border)}.decision-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.confirm-panel{background:var(--surface-2);border:1px solid #0369a1;border-radius:8px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.65rem;margin-top:.25rem}.confirm-header{display:flex;gap:.75rem;align-items:flex-start}.confirm-icon{font-size:1.2rem;flex-shrink:0;line-height:1.4;color:#0ea5e9}.confirm-header strong{font-size:.875rem;color:var(--text)}.confirm-message{font-size:.82rem;color:var(--muted);margin-top:.2rem}.confirm-round{font-size:.78rem;color:var(--muted);margin:0;font-style:italic}.confirm-rejected{font-size:.78rem;color:var(--muted)}.confirm-rejected summary{cursor:pointer}.confirm-rejected ul{margin:.4rem 0 0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.3rem}.confirm-rejected strong{color:var(--text)}.confirm-label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--muted)}.confirm-textarea{resize:vertical}.confirm-file-row{display:flex;align-items:center;gap:.6rem}.confirm-filenames{font-size:.78rem;color:var(--muted);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.section-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding-top:.25rem}.full-col--history{overflow:hidden;padding:0}.hist-layout{display:flex;flex-direction:row;gap:1rem;height:100%;padding:1rem;box-sizing:border-box}.hist-list-panel{flex:1;min-width:260px;max-width:420px;display:flex;flex-direction:column;gap:.6rem}.hist-list-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.hist-list-header h3{margin:0;font-size:.95rem}.hist-list{flex:1;overflow-y:auto;padding-right:6px;display:flex;flex-direction:column;gap:.35rem;min-height:0}.hist-chip{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:.5rem .65rem;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;transition:border-color .15s;flex-shrink:0}.hist-chip:hover{border-color:var(--accent)}.hist-chip--selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--surface-2))}.hist-chip-top{display:flex;justify-content:space-between;align-items:center;gap:.4rem}.hist-chip-id{font-size:.88rem;font-weight:700;color:var(--accent);white-space:nowrap;flex-shrink:0}.hist-chip-ref{font-size:.72rem;font-weight:600;font-family:monospace;color:var(--muted);white-space:nowrap;flex-shrink:0}.hist-chip-machine{font-size:.7rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;opacity:.7}.hist-chip-time{font-size:.68rem;color:var(--muted);white-space:nowrap;margin-left:auto}.hist-chip-builder{font-size:.68rem;color:var(--muted);opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hist-chip-issue{font-size:.78rem;line-height:1.35}.hist-chip-bottom{display:flex;align-items:center;gap:.4rem;margin-top:.1rem}.hist-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.hist-chip-status{font-size:.7rem;font-weight:600}.hist-chip-cause{font-size:.7rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hist-detail-panel{flex:2;min-width:0;overflow:hidden;display:flex;flex-direction:column}.hist-detail-empty{height:100%;display:flex;align-items:center;justify-content:center}.hist-detail-card{height:100%;display:flex;flex-direction:column;overflow:hidden}.hist-detail-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;padding-bottom:.6rem;border-bottom:1px solid var(--border);margin-bottom:.6rem}.hist-detail-header-left{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.hist-detail-header-right{display:flex;align-items:center;gap:.5rem}.hist-detail-machine{font-size:1rem;font-weight:700;color:var(--accent)}.hist-detail-date{font-size:.78rem;color:var(--muted)}.hist-detail-summary{display:flex;flex-direction:column;gap:.35rem;flex-shrink:0;margin-bottom:.5rem}.hist-detail-row{display:flex;gap:.75rem;align-items:baseline;font-size:.82rem}.hist-detail-label{flex-shrink:0;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);min-width:80px}.hist-detail-content{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding-top:.5rem}.hist-chat{display:flex;flex-direction:column;gap:.5rem}.hist-chat-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--muted);padding-bottom:.4rem;border-bottom:1px solid var(--border);flex-shrink:0}.hist-chat-mb{font-weight:600;color:var(--text)}.hist-chat-ref{font-size:.72rem;background:var(--surface-2);padding:.1rem .35rem;border-radius:4px;border:1px solid var(--border)}.hist-chat-messages{display:flex;flex-direction:column;gap:.5rem}.hist-msg{border-radius:6px;padding:.5rem .65rem;font-size:.82rem;line-height:1.45}.hist-msg--agent{background:color-mix(in srgb,#6b21a8 8%,var(--surface-2));border:1px solid color-mix(in srgb,#6b21a8 20%,var(--border))}.hist-msg--fo{background:color-mix(in srgb,var(--accent) 8%,var(--surface-2));border:1px solid color-mix(in srgb,var(--accent) 20%,var(--border));margin-left:2rem}.hist-msg--mb{background:color-mix(in srgb,#10b981 8%,var(--surface-2));border:1px solid color-mix(in srgb,#10b981 20%,var(--border))}.hist-msg-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.hist-msg-role{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.hist-msg-time{font-size:.65rem;color:var(--muted)}.hist-msg-content{white-space:pre-wrap;word-break:break-word}.hist-inbox-pane{display:flex;flex-direction:column;height:100%;min-height:0}.hist-inbox-pane-header{display:flex;align-items:center;gap:.5rem;padding:0 0 .4rem;border-bottom:1px solid var(--border);flex-shrink:0}.hist-inbox-back{background:none;border:1px solid var(--border);cursor:pointer;font-size:.75rem;font-weight:500;color:var(--muted);padding:3px 8px;border-radius:4px;transition:color .15s,background .15s,border-color .15s;flex-shrink:0;white-space:nowrap;margin-left:auto}.hist-inbox-back:hover{color:var(--text);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.hist-inbox-list{flex:1;overflow-y:auto;padding:.5rem 0;display:flex;flex-direction:column;gap:.4rem;min-height:0}.incident-list{display:flex;flex-direction:column;gap:.4rem}.incident-item{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:.55rem .75rem;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;transition:border-color .15s}.incident-item:hover,.incident-item.selected{border-color:var(--accent)}.incident-row{display:flex;justify-content:space-between;align-items:center}.incident-machine{font-size:.78rem;font-weight:600;color:var(--accent)}.incident-issue{font-size:.8rem}.incident-cause{font-size:.75rem;color:var(--muted)}.incident-detail{border-top:1px solid var(--border);padding-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.detail-meta{display:flex;justify-content:space-between;align-items:center}.detail-machine{font-weight:600;color:var(--accent);font-size:.85rem}.detail-row{display:flex;gap:.75rem;align-items:baseline;font-size:.82rem}.detail-label{flex-shrink:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);min-width:80px}.trace-list{display:flex;flex-direction:column;gap:.3rem}.trace-item{display:flex;align-items:center;gap:.6rem}.app-nav{display:flex;gap:.25rem;margin-left:auto}.nav-tab{background:transparent;border:1px solid transparent;border-radius:4px;color:var(--muted);cursor:pointer;font-size:.8rem;font-weight:600;padding:.3rem .75rem;text-transform:uppercase;letter-spacing:.04em;transition:color .15s,border-color .15s}.nav-tab:hover{color:var(--text)}.nav-tab.active{color:var(--text);border-color:var(--border);background:var(--surface)}.full-col{grid-column:1 / -1;overflow-y:auto}.full-col--dashboard{overflow:hidden}.db-layout{display:grid;grid-template-columns:3fr 2fr;gap:1rem;height:100%;padding:0 .25rem;overflow:hidden}.db-incidents-panel{display:flex;flex-direction:column;gap:.6rem;min-height:0;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1rem}.db-incidents-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.db-incidents-summary{display:flex;align-items:center;gap:.5rem}.db-new-btn{font-size:.72rem;font-weight:600;padding:.2rem .6rem;border-radius:4px;border:1px solid var(--accent);color:var(--accent);background:transparent;cursor:pointer;white-space:nowrap}.db-new-btn:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.db-action-badge{font-size:.7rem;font-weight:700;padding:.1rem .5rem;border-radius:999px;background:color-mix(in srgb,#f59e0b 18%,transparent);color:#f59e0b;letter-spacing:.02em}.db-incidents-total{font-size:.75rem;color:var(--muted)}.db-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;flex:1;border:1px dashed var(--border);border-radius:6px;padding:2.5rem 1rem;text-align:center}.db-empty-state p{font-size:.85rem;color:var(--muted)}.db-empty-hint{font-size:.75rem!important;opacity:.65}.db-incidents-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.15rem;padding-right:4px;min-height:0}.db-group{display:flex;flex-direction:column;gap:.2rem}.db-group-heading{display:flex;align-items:center;gap:.4rem;padding:.55rem 0 .2rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.db-group-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:currentColor}.db-group-label{flex:1}.db-group-count{font-size:.68rem;color:var(--muted)}.db-incident-row{display:flex;align-items:center;gap:.75rem;padding:.55rem .75rem .55rem .6rem;border-radius:6px;background:var(--surface);border:1px solid var(--border);border-left-width:3px;cursor:pointer;transition:background .12s;flex-shrink:0}.db-incident-row:hover{background:var(--surface-2)}.db-incident-row--critical{border-left-color:#ef4444}.db-incident-row--action{border-left-color:#f59e0b}.db-incident-row--running{border-left-color:var(--accent)}.db-incident-row--waiting{border-left-color:#475569}.db-incident-row--terminal{border-left-color:var(--border);opacity:.5}@keyframes db-border-glow{0%,to{box-shadow:inset 3px 0 #f97316,0 0 #f9731666}50%{box-shadow:inset 3px 0 #f97316,0 0 8px 2px #f9731633}}@keyframes db-dot-blink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.25;transform:scale(.75)}}@keyframes db-badge-ripple{0%{box-shadow:0 0 #f9731680}70%{box-shadow:0 0 0 6px #f9731600}to{box-shadow:0 0 #f9731600}}.db-incident-row--escalating{border-left-color:#f97316!important;animation:db-border-glow 2s ease-in-out infinite}.db-incident-status--escalating{display:inline-flex;align-items:center;gap:.3rem;color:#f97316!important;background:color-mix(in srgb,#f97316 16%,transparent);border:1px solid color-mix(in srgb,#f97316 35%,transparent);border-radius:3px;padding:.05rem .4rem;animation:db-badge-ripple 2s ease-out infinite}.db-escalate-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#f97316;flex-shrink:0;animation:db-dot-blink 1s ease-in-out infinite}.db-incident-main{flex:1;display:flex;align-items:baseline;gap:.45rem;min-width:0}.db-incident-id{font-size:.78rem;font-weight:700;color:var(--accent);flex-shrink:0}.db-incident-issue{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-incident-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem;flex-shrink:0}.db-incident-status{font-size:.7rem;font-weight:600}.db-incident-time{font-size:.67rem;color:var(--muted)}.db-urgency--critical{color:#ef4444}.db-urgency--action{color:#f59e0b}.db-urgency--running{color:var(--accent)}.db-urgency--waiting{color:#64748b}.db-urgency--terminal{color:var(--muted)}.db-sidebar{display:flex;flex-direction:column;gap:.85rem;overflow-y:auto;min-height:0;padding-right:2px}.db-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:0 .1rem .1rem;flex-shrink:0}.db-sidebar-title{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.db-refresh-control{display:flex;align-items:center;gap:.35rem}.db-refresh-label{font-size:.72rem;color:var(--muted)}.db-refresh-select{font-size:.72rem;padding:1px 4px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);cursor:pointer}.db-stat-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.9rem 1rem;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;flex-shrink:0;transition:border-color .14s}.db-stat-card:hover{border-color:var(--accent)}.db-stat-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.db-stat-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.db-stat-badge{font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:.12rem .45rem;border-radius:999px}.db-stat-badge--ok{background:color-mix(in srgb,#22c55e 14%,transparent);color:#22c55e}.db-stat-badge--error{background:color-mix(in srgb,#ef4444 14%,transparent);color:#ef4444}.db-stat-badge--warn{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#f59e0b}.db-stat-badge--muted{background:var(--surface-2);color:var(--muted)}.db-stat-badge--info{background:color-mix(in srgb,#6366f1 14%,transparent);color:#818cf8}.db-stat-badges{display:flex;align-items:center;gap:.3rem}.db-stat-body{display:flex;align-items:baseline;gap:.4rem}.db-stat-number{font-size:2.2rem;font-weight:700;line-height:1;color:var(--text)}.db-stat-sublabel,.db-stat-hint{font-size:.8rem;color:var(--muted)}.db-hist-breakdown{display:flex;flex-wrap:wrap;gap:.3rem}.db-hist-pill{font-size:.67rem;font-weight:600;padding:.1rem .4rem;border-radius:4px}.db-hist-pill--ok{background:color-mix(in srgb,#22c55e 12%,transparent);color:#22c55e}.db-hist-pill--muted{background:var(--surface-2);color:var(--muted)}.db-hist-pill--warn{background:color-mix(in srgb,#f97316 12%,transparent);color:#f97316}.db-hist-pill--err{background:color-mix(in srgb,#ef4444 12%,transparent);color:#ef4444}.db-health-errors{display:flex;flex-direction:column;gap:.3rem;padding-top:.1rem}.db-health-error-row{display:flex;align-items:center;gap:.45rem;font-size:.8rem}.db-policy-breakdown{display:flex;flex-wrap:wrap;gap:.3rem}.db-policy-pill{font-size:.68rem;font-weight:600;padding:.1rem .45rem;border-radius:999px}.db-policy-pill--ok{background:color-mix(in srgb,#22c55e 12%,transparent);color:#22c55e}.db-policy-pill--warn{background:color-mix(in srgb,#f59e0b 12%,transparent);color:#f59e0b}.db-policy-pill--info{background:color-mix(in srgb,#6366f1 12%,transparent);color:#818cf8}.db-policy-elevated-list{display:flex;flex-direction:column;gap:.45rem;border-top:1px solid var(--border);padding-top:.5rem;margin-top:.1rem}.db-policy-peer-row{display:flex;flex-direction:column;gap:.25rem}.db-policy-peer-id{font-size:.72rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-policy-cap-pills{display:flex;flex-wrap:wrap;gap:.25rem}.db-policy-cap-pill{font-size:.65rem;font-weight:600;padding:.1rem .4rem;border-radius:3px;border-width:1px;border-style:solid}.db-policy-cap-pill--low{background:color-mix(in srgb,#6366f1 10%,transparent);color:#818cf8;border-color:color-mix(in srgb,#6366f1 25%,transparent)}.db-policy-cap-pill--medium{background:color-mix(in srgb,#f59e0b 10%,transparent);color:#f59e0b;border-color:color-mix(in srgb,#f59e0b 30%,transparent)}.db-policy-cap-pill--high{background:color-mix(in srgb,#ef4444 10%,transparent);color:#ef4444;border-color:color-mix(in srgb,#ef4444 30%,transparent)}.db-ngsi-stats-row{display:flex;gap:1.5rem;margin-top:.25rem}.db-ngsi-stat-item{display:flex;flex-direction:column;gap:.15rem}.db-ngsi-types{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.5rem}.db-ngsi-type-pill{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;padding:.15rem .45rem;border-radius:4px;background:var(--surface-2);color:var(--muted);font-family:ui-monospace,monospace;max-width:14rem;overflow:hidden}.db-ngsi-pill-count{font-size:.65rem;background:var(--surface-3, var(--border));border-radius:3px;padding:0 .25rem;color:var(--text);flex-shrink:0;font-variant-numeric:tabular-nums}.db-ngsi-more{font-size:.7rem;color:var(--muted);padding:.15rem 0;align-self:center}.db-alerts-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}.db-alert-chip{display:flex;align-items:center;gap:.3rem;padding:.2rem .5rem;border-radius:4px;border-left:3px solid var(--sev, #6b7280);background:var(--surface-2)}.db-alert-chip-count{font-weight:700;font-size:1rem;line-height:1;color:var(--sev, #6b7280);font-variant-numeric:tabular-nums}.db-alert-chip-label{font-size:.7rem;color:var(--muted);text-transform:capitalize}.diag-page{display:flex;flex-direction:column;gap:1rem}.diag-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}.diag-col-left,.diag-col-right{display:flex;flex-direction:column;gap:1rem}@media (max-width: 900px){.diag-columns{grid-template-columns:1fr}}.diag-header{display:flex;align-items:center;justify-content:space-between}.diag-header h2{font-size:1rem}.diag-header-right{display:flex;align-items:center;gap:1rem}.diag-service-list{display:flex;flex-direction:column;gap:.6rem}.diag-row-wrap{display:flex;flex-direction:column;gap:.35rem}.diag-row{display:flex;align-items:center;gap:.65rem;font-size:.875rem}.diag-row-clickable{cursor:pointer;border-radius:4px;padding:.1rem .25rem;margin:-.1rem -.25rem}.diag-row-clickable:hover{background:var(--surface-2)}.diag-service-name{font-weight:500;min-width:160px}.diag-latency{color:#22c55e;font-size:.8rem}.diag-info{color:var(--muted);font-size:.78rem}.diag-info-connected{color:#22c55e;font-weight:600}.diag-error{color:var(--danger);font-size:.8rem;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.diag-expand-toggle{color:var(--muted);font-size:.65rem;flex-shrink:0}.diag-error-expanded{display:flex;flex-direction:column;gap:.3rem}.diag-error-url{font-size:.78rem;color:var(--muted);margin-left:1.5rem}.diag-error-url code{color:var(--text);font-family:monospace}.diag-error-detail{color:var(--muted)}.diag-error-full{background:var(--surface-2);border:1px solid var(--border);border-radius:4px;color:var(--danger);font-family:monospace;font-size:.78rem;line-height:1.5;margin-left:1.5rem;overflow-x:auto;padding:.5rem .65rem;white-space:pre-wrap;word-break:break-all}.diag-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.diag-dot.ok{background:#22c55e;box-shadow:0 0 6px #22c55e88}.diag-dot.warning{background:#f59e0b;box-shadow:0 0 6px #f59e0b88}.diag-dot.error{background:var(--danger);box-shadow:0 0 6px #ef444488}.diag-dot.checking{background:var(--muted)}.diag-info-warning{color:#f59e0b}.diag-model-chips{display:flex;gap:.3rem;flex-wrap:wrap;margin-left:.25rem}.diag-model-chip{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;padding:.1rem .4rem;border-radius:4px;font-family:monospace;font-weight:600;border:1px solid}.diag-model-chip.chip-ok{color:#22c55e;border-color:#22c55e55;background:#22c55e11}.diag-model-chip.chip-missing{color:#ef4444;border-color:#ef444455;background:#ef444411}.chip-role{font-weight:400;font-size:.68rem;color:inherit;opacity:.75}.badge-ok{background:#15803d}.badge-degraded{background:#b45309}.diag-config-form{display:flex;flex-direction:column;gap:.5rem}.diag-config-label{display:flex;align-items:baseline;gap:.5rem;font-size:.8rem;font-weight:500;color:var(--text);margin-top:.25rem}.diag-config-hint{font-size:.73rem;color:var(--muted);font-weight:400}.diag-config-input{font-family:ui-monospace,monospace;font-size:.8rem}.diag-config-actions{display:flex;align-items:center;gap:.75rem;margin-top:.25rem}.diag-config-saved{font-size:.8rem;color:#22c55e}.diag-config-divider{border:none;border-top:1px solid var(--border);margin:.5rem 0}.diag-config-id-row{display:flex;align-items:center;gap:.5rem;padding:.2rem 0}.diag-config-id-value{font-size:.78rem;color:var(--text);word-break:break-all}.diag-config-id-missing{font-size:.78rem;color:var(--muted)}.kc-form{display:flex;flex-direction:column;gap:.5rem}.kc-form label{display:flex;flex-direction:column;gap:.2rem;font-size:.8rem;color:var(--muted);position:relative}.kc-password-hint{font-size:.7rem;color:var(--muted);font-style:italic;display:inline;margin-left:.4rem}.kc-token-status{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-radius:6px;border:1px solid var(--border);background:var(--surface-2)}.kc-token-status.ok{border-color:#166534}.kc-token-status.urgent,.kc-token-status.warning{border-color:#92400e}.kc-token-status.error{border-color:#7f1d1d}.kc-token-text{display:flex;flex-direction:column;gap:.1rem}.kc-token-title{font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.kc-token-sub{font-size:.78rem;color:var(--muted)}.kc-token-tag{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .4rem;border-radius:3px;background:var(--surface);border:1px solid var(--border);color:var(--muted)}.kc-error-block{background:var(--surface-2);border:1px solid var(--danger);border-radius:4px;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.3rem}.kc-error-heading{color:var(--danger);font-weight:600;font-size:.82rem;margin-bottom:.15rem}.kc-error-row{display:flex;gap:.6rem;font-size:.8rem}.kc-error-label{color:var(--muted);flex-shrink:0;min-width:90px}.kc-error-value{color:var(--text);word-break:break-all;font-family:monospace;font-size:.78rem}.clarification-panel{background:var(--surface-2);border:1px solid #92400e;border-radius:8px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.65rem;margin-top:.25rem}.machine-builder-panel{border-color:#6b21a8}.mb-conv-panel{display:flex;flex-direction:column;gap:0;border:1px solid #6b21a8;border-radius:8px;overflow:hidden;margin-top:.25rem;background:var(--surface-2)}.mb-conv-context{padding:.85rem 1rem;display:flex;flex-direction:column;gap:.35rem}.mb-conv-title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text)}.mb-conv-icon{font-size:1rem;flex-shrink:0}.mb-conv-field{display:flex;gap:.5rem;align-items:baseline;font-size:.82rem}.mb-conv-label{color:var(--muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;flex-shrink:0;min-width:6rem}.mb-conv-value{color:var(--text)}.muted-code{color:var(--muted);font-size:.75em}.mb-conv-description{font-size:.79rem;color:var(--muted);margin:.2rem 0 0;line-height:1.45}.mb-conv-status{padding:.7rem 1rem;border-top:1px solid color-mix(in srgb,#6b21a8 30%,var(--border));background:color-mix(in srgb,#6b21a8 5%,var(--surface-2));display:flex;flex-direction:column;gap:.3rem}.mb-conv-status-header{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:.1rem}.mb-conv-status-row{display:flex;align-items:center;gap:.45rem;font-size:.82rem;color:var(--text)}.mb-conv-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.mb-conv-status-dot.active{background:#a855f7;box-shadow:0 0 5px #a855f7}.mb-conv-status-dot.closed{background:#94a3b8}.mb-conv-status-dot.warn{background:#f59e0b}.mb-conv-status-dot.error{background:#ef4444}.mb-conv-status-label{font-size:.82rem}.mb-conv-status-note{font-size:.79rem;color:var(--muted);font-style:italic;margin:.1rem 0 0}.mb-conv-force-close{margin-top:.55rem;padding:.6rem .75rem;background:color-mix(in srgb,#f59e0b 6%,var(--surface-2));border:1px solid color-mix(in srgb,#f59e0b 35%,var(--border));border-radius:6px;display:flex;flex-direction:column;gap:.45rem}.mb-conv-force-hint{font-size:.78rem;color:var(--muted);line-height:1.4}.mb-conv-force-form{display:flex;flex-direction:column;gap:.35rem}.mb-conv-force-label{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.mb-conv-force-select,.mb-conv-force-input{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.82rem;padding:.3rem .5rem;outline:none;width:100%}.mb-conv-force-select:focus,.mb-conv-force-input:focus{border-color:#f59e0b}.mb-conv-force-progress{font-size:.79rem;color:var(--muted);font-style:italic;margin-top:.3rem}.mb-conv-actions-zone{padding:.65rem 1rem;border-top:1px solid color-mix(in srgb,#6b21a8 30%,var(--border));display:flex;flex-direction:column;gap:.4rem}.conv-action-row{display:flex;flex-direction:column;gap:.3rem}.conv-action-expanded{display:flex;flex-direction:column;gap:.35rem;padding:.5rem .6rem;background:color-mix(in srgb,#6b21a8 6%,var(--surface-2));border:1px solid color-mix(in srgb,#6b21a8 25%,var(--border));border-radius:6px}.conv-action-textarea{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.82rem;padding:.35rem .5rem;resize:vertical;width:100%;outline:none;font-family:inherit}.conv-action-textarea:focus{border-color:#a855f7}.conv-action-expanded-btns{display:flex;gap:.4rem}.conv-refresh-row{margin-top:.1rem;border-top:1px solid var(--border);padding-top:.4rem}.conv-inbox-note{font-size:.78rem;padding:.3rem .5rem;border-radius:4px;margin-top:.3rem}.conv-inbox-note--ok{background:color-mix(in srgb,#22c55e 10%,var(--surface-2));color:#4ade80}.conv-inbox-note--warn{background:color-mix(in srgb,#f59e0b 10%,var(--surface-2));color:#fbbf24}.conv-inbox-note--error{background:color-mix(in srgb,#ef4444 10%,var(--surface-2));color:#f87171}.conv-inbox-note--info{background:color-mix(in srgb,#94a3b8 10%,var(--surface-2));color:var(--muted)}.conv-manual-close{margin-top:.55rem;padding:.6rem .75rem;background:color-mix(in srgb,#f59e0b 6%,var(--surface-2));border:1px solid color-mix(in srgb,#f59e0b 35%,var(--border));border-radius:6px;display:flex;flex-direction:column;gap:.4rem}.conv-manual-close-title{font-size:.82rem;font-weight:600;color:var(--text)}.conv-manual-close-options{display:flex;flex-wrap:wrap;gap:.35rem}.conv-manual-btn{padding:.25rem .6rem;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--muted);font-size:.78rem;cursor:pointer;transition:border-color .15s,color .15s}.conv-manual-btn:hover{border-color:#f59e0b;color:var(--text)}.conv-manual-btn.selected{border-color:#f59e0b;color:#fbbf24;background:color-mix(in srgb,#f59e0b 12%,var(--surface))}.mb-conv-actions{padding:.65rem 1rem;border-top:1px solid color-mix(in srgb,#6b21a8 30%,var(--border));display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.operator-approval-panel{border-color:#c2410c}.mb-recommendation-panel{border-color:#059669}.recommendation-summary{font-size:.875rem;color:var(--text);line-height:1.5}.action-items-list{margin:.35rem 0 0 1.1rem;display:flex;flex-direction:column;gap:.2rem;font-size:.82rem;color:var(--text)}.mb-reply-actions{display:flex;flex-direction:column;gap:.4rem}.btn-stop-escalate{margin-left:0;align-self:flex-start}.mb-closed-panel{background:color-mix(in srgb,#f97316 8%,var(--surface-2));border:1px solid #f97316;border-radius:6px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.65rem}.mb-closed-header{display:flex;align-items:flex-start;gap:.6rem}.mb-closed-icon{font-size:1.1rem;flex-shrink:0;margin-top:.05rem}.mb-closed-title{font-size:.88rem;font-weight:600;color:var(--text)}.mb-closed-sender{font-size:.75rem;color:var(--muted);margin-top:.1rem}.mb-closed-outcome-badge{margin-left:auto;flex-shrink:0;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-weight:700;color:#fff;white-space:nowrap}.mb-closed-reason{font-size:.82rem;color:var(--text);line-height:1.5;margin:0;padding:.4rem .6rem;background:var(--surface);border-radius:4px;border-left:3px solid #f97316}.mb-closed-actions{display:flex;gap:.5rem;flex-wrap:wrap}.cap-req-section{display:flex;flex-direction:column;gap:.5rem}.cap-req-item{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.3rem}.cap-req-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.cap-req-peer{display:flex;flex-direction:column;gap:.1rem;min-width:0}.cap-req-consumer{font-size:.82rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cap-req-id{font-size:.72rem;font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cap-req-direction{font-size:.7rem}.cap-req-capability{display:flex;align-items:center;gap:.35rem;font-size:.82rem}.cap-req-label{font-size:.78rem}.cap-req-actions{display:flex;gap:.5rem;margin-top:.25rem}.approval-policy-row{display:flex;align-items:center;gap:.5rem;font-size:.82rem}.approval-label{font-size:.78rem;color:var(--muted);font-weight:600}.policy-badge{background:var(--surface-1);border:1px solid var(--border);border-radius:4px;padding:.1rem .4rem;font-size:.75rem}.approval-section{display:flex;flex-direction:column;gap:.25rem}.tag-list{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;padding:0;margin:.2rem 0 0}.tag{font-size:.72rem;font-weight:600;border-radius:4px;padding:.15rem .5rem}.tag-ok{background:#14532d;color:#bbf7d0}.tag-denied{background:#7f1d1d;color:#fecaca}.clarification-header{display:flex;gap:.75rem;align-items:flex-start}.clarification-icon{font-size:1.2rem;flex-shrink:0;line-height:1.4}.clarification-icon.waiting{font-size:1.1rem}.clarification-header strong{font-size:.875rem;color:var(--text)}.clarification-message{font-size:.82rem;color:var(--muted);margin-top:.2rem}.clarification-label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--muted)}.clarification-textarea{resize:vertical}.clarification-file-row{display:flex;align-items:center;gap:.6rem}.clarification-filenames{font-size:.78rem;color:var(--muted);font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clarification-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.btn-secondary{background:transparent;color:var(--text);border:1px solid var(--border);border-radius:4px;padding:.4rem .85rem;font-size:.8rem;font-weight:600;cursor:pointer}.btn-secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:var(--danger);color:#fff;border:none;border-radius:4px;padding:.45rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer;align-self:flex-start}.btn-danger:hover:not(:disabled){filter:brightness(1.1)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-escalate{background:#6b21a8;color:#fff;border:none;border-radius:4px;padding:.4rem .85rem;font-size:.8rem;font-weight:600;cursor:pointer}.btn-escalate:hover:not(:disabled){filter:brightness(1.15)}.btn-escalate:disabled{opacity:.5;cursor:not-allowed}.escalation-preflight-note{background:color-mix(in srgb,var(--color-warn, #f59e0b) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-warn, #f59e0b) 40%,transparent);border-radius:6px;padding:.55rem .75rem;margin-top:.5rem;font-size:.8rem}.escalation-preflight-note strong{display:block;margin-bottom:.2rem}.escalation-preflight-note p{margin:0;color:var(--text-muted, #6b7280)}.escalation-preflight-note details{margin-top:.35rem}.escalation-preflight-note summary{cursor:pointer;color:var(--text-muted, #6b7280)}.escalation-preflight-detail{margin-top:.3rem;font-size:.72rem;white-space:pre-wrap;word-break:break-all;background:var(--surface-2, #f3f4f6);border-radius:4px;padding:.35rem .5rem;max-height:8rem;overflow-y:auto}.escalation-preflight-ok{font-size:.8rem;color:var(--text-muted, #6b7280);margin:.35rem 0 0}.btn-stop{background:transparent;color:var(--danger);border:1px solid var(--danger);border-radius:4px;padding:.4rem .85rem;font-size:.8rem;font-weight:600;cursor:pointer;margin-left:auto}.btn-stop:hover:not(:disabled){background:var(--danger);color:#fff}.btn-stop:disabled{opacity:.5;cursor:not-allowed}.user-pane{display:flex;align-items:center;gap:.75rem;margin-left:auto;padding-left:.75rem;border-left:1px solid var(--border);position:relative}.user-info{display:flex;flex-direction:column;align-items:flex-end;gap:.05rem;min-width:0}.btn-gateway-reconnect{background:#7f1d1d44;border:1px solid #ef4444;border-radius:4px;color:#f87171;cursor:pointer;font-size:.75rem;font-weight:600;padding:.25rem .65rem;white-space:nowrap;animation:blink-needs-input 1.2s ease-in-out infinite}.btn-gateway-reconnect:hover{background:#7f1d1d88}.user-name{font-size:.8rem;font-weight:600;color:var(--text);white-space:nowrap}.user-email{font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.user-participant-id{font-size:.68rem;color:var(--accent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;opacity:.85}.user-logout{margin-left:0;flex-shrink:0}.user-location-btn{background:none;border:none;padding:0;cursor:pointer;font-size:.7rem;color:var(--accent);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;text-decoration:underline dotted;opacity:.85}.user-location-btn:hover{opacity:1}.factory-popover{position:fixed;z-index:1000;width:320px;max-height:70vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #0009;padding:.75rem}.fp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}.fp-title{font-size:.85rem;font-weight:700;color:var(--text)}.fp-close{background:none;border:none;cursor:pointer;color:var(--muted);font-size:.9rem;padding:0 .2rem}.fp-close:hover{color:var(--text)}.fp-section{margin-bottom:.75rem}.fp-section:last-child{margin-bottom:0}.fp-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .35rem}.fp-field{display:flex;gap:.5rem;margin-bottom:.2rem;font-size:.78rem}.fp-label{color:var(--muted);min-width:80px;flex-shrink:0}.fp-value{color:var(--text);word-break:break-word}.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:100}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem;width:100%;max-width:380px;display:flex;flex-direction:column;gap:1.25rem}.login-header{text-align:center}.login-title{font-size:1.25rem;font-weight:700;color:var(--text);letter-spacing:.03em}.login-subtitle{font-size:.8rem;color:var(--muted);margin-top:.2rem}.login-oidc-info{display:grid;grid-template-columns:auto 1fr;gap:.2rem .75rem;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:.6rem .75rem;font-size:.78rem}.login-oidc-label{color:var(--muted)}.login-oidc-value{color:var(--text);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-form{display:flex;flex-direction:column;gap:.65rem}.login-label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--muted)}.login-submit{align-self:stretch;padding:.6rem;font-size:.9rem}.login-error{color:var(--danger);font-size:.82rem}.login-error-block{background:var(--surface-2);border:1px solid var(--danger);border-radius:4px;padding:.6rem .75rem;display:flex;flex-direction:column;gap:.2rem;font-size:.82rem}.login-error-block strong{color:var(--danger)}.login-error-line{color:var(--muted)}.kc-config-row{display:flex;gap:.75rem;align-items:baseline;font-size:.82rem}.kc-config-label{flex-shrink:0;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);min-width:52px}.kc-config-value{color:var(--text);font-family:monospace;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.muted{color:var(--muted);font-size:.82rem}.error-msg{color:var(--danger);font-size:.82rem}.kc-login-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.kc-input{background:var(--surface-2);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.85rem;padding:.45rem .6rem;outline:none}.kc-input:focus{border-color:var(--accent)}.kc-login-error{color:var(--danger);font-size:.8rem}.ds-secret-notice{font-size:.8rem;padding:.5rem .7rem;border-radius:6px;line-height:1.45}.ds-secret-notice--missing{background:#78350f22;border:1px solid #f59e0b55;color:var(--text)}.ds-error-detail{background:#7f1d1d22;border:1px solid #ef444455;border-radius:6px;padding:.6rem .75rem;font-size:.8rem;display:flex;flex-direction:column;gap:.3rem}.ds-error-stage{color:var(--danger);font-weight:600}.ds-error-row{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.ds-error-label{color:var(--muted);font-size:.75rem;white-space:nowrap}.ds-error-code{font-family:monospace;font-size:.75rem;color:var(--text);word-break:break-all}.ds-error-msg{color:var(--text);margin-top:.1rem}.kc-login-actions{display:flex;gap:.5rem}.btn-sm{font-size:.78rem;padding:.3rem .65rem}.ds-peers-section{margin-top:1.25rem;border-top:1px solid var(--border);padding-top:1rem}.ds-peers-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}.ds-peers-header h4{margin:0;font-size:.9rem;font-weight:600}.ds-peer-list{display:flex;flex-wrap:wrap;gap:.5rem}.ds-peer-chip{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;color:var(--text);cursor:pointer;display:flex;flex-direction:column;gap:.1rem;padding:.4rem .75rem;text-align:left;transition:border-color .15s}.ds-peer-chip:hover{border-color:var(--accent)}.ds-peer-chip.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-2))}.ds-peer-id{font-size:.85rem;font-weight:600;-webkit-user-select:text;user-select:text}.ds-peer-sub-id{font-size:.7rem;color:var(--muted);font-family:monospace;word-break:break-all;-webkit-user-select:text;user-select:text}.ds-peer-type{font-size:.72rem;color:var(--muted)}.ds-chip-access-row{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin-top:.25rem}.ds-peer-access-badge{border-radius:3px;font-size:.65rem;font-weight:600;letter-spacing:.04em;padding:.1rem .35rem;text-transform:uppercase}.ds-peer-access--standard{background:#14532d44;color:#4ade80}.ds-peer-access--elevated{background:#78350f44;color:#fbbf24}.ds-peer-access--restricted{background:#1e3a5f44;color:#60a5fa}.ds-chip-cap-pill{border-radius:3px;font-size:.62rem;font-weight:500;padding:.1rem .3rem}.ds-chip-cap-pill--low{background:#14532d33;color:#4ade80}.ds-chip-cap-pill--medium{background:#78350f33;color:#fbbf24}.ds-chip-cap-pill--high{background:#7f1d1d33;color:#f87171}.ds-policy-panel{margin-top:1rem}.ds-policy-header{display:flex;align-items:center;justify-content:space-between;font-size:.85rem;margin-bottom:.75rem;color:var(--muted)}.ds-policy-header strong{color:var(--text)}.ds-capability-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 700px){.ds-capability-grid{grid-template-columns:1fr}}.cap-group{display:flex;flex-direction:column;gap:.4rem}.cap-group-title{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.cap-table{width:100%;border-collapse:collapse;font-size:.82rem}.cap-table td{padding:.2rem .4rem .2rem 0;vertical-align:middle}.cap-name{font-family:monospace;color:var(--text)}.cap-source{color:var(--muted);font-size:.75rem}.cap-status-badge{border-radius:4px;font-size:.72rem;font-weight:600;padding:.1rem .4rem;text-transform:uppercase;letter-spacing:.03em}.cap-status-ok{background:#14532d44;color:#4ade80}.cap-status-warn{background:#78350f44;color:#fbbf24}.cap-status-error{background:#7f1d1d44;color:#f87171}@keyframes blink-needs-input{0%,to{border-color:#ef4444;box-shadow:0 0 0 2px #ef444444}50%{border-color:#7f1d1d;box-shadow:none}}@keyframes blink-running{0%,to{border-color:#22c55e;box-shadow:0 0 0 2px #22c55e44}50%{border-color:#14532d;box-shadow:none}}@keyframes blink-waiting-mb{0%,to{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b44}50%{border-color:#78350f;box-shadow:none}}.ail-panel{display:flex;flex-direction:column;height:100%;border-top-right-radius:0!important;border-bottom-right-radius:0!important}.ail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.ail-header h3{margin:0;font-size:1rem}.ail-filter-row{display:flex;align-items:center;gap:.25rem;margin-bottom:.75rem}.ail-filter-input{flex:1;padding:4px 8px;font-size:.8rem;border:1px solid var(--border);border-radius:4px;background:var(--surface-2);color:var(--text)}.ail-filter-input::placeholder{color:var(--text-muted, #888)}.ail-filter-clear{background:none;border:none;cursor:pointer;color:var(--text-muted, #888);font-size:1rem;padding:0 4px;line-height:1}.ail-filter-clear:hover{color:var(--text)}.ail-list{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto}.ail-chip{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;padding:.6rem .75rem;transition:border-color .15s,background .15s,opacity .2s;opacity:.55}.ail-chip:hover{border-color:var(--accent);opacity:.85}.ail-chip-selected{animation:none!important;background:color-mix(in srgb,var(--accent) 14%,var(--surface))!important;border:2px solid var(--accent)!important;border-radius:6px!important;box-shadow:0 4px 20px #0006,0 0 0 1px var(--accent);padding:1rem 2rem 1rem 1rem;position:relative;z-index:2;opacity:1!important}.ail-chip-selected:after{content:"▶";position:absolute;right:.6rem;top:50%;transform:translateY(-50%);color:var(--accent);font-size:.75rem;opacity:.8}.ail-chip-selected .ail-chip-issue{white-space:normal;overflow:visible;text-overflow:unset;color:var(--text);font-size:.85rem;line-height:1.4}.ail-chip-selected .ail-chip-id{font-size:1.1rem}.ail-chip-selected .ail-chip-machine{font-size:.72rem}.ail-chip-selected .ail-chip-status-label{font-size:.78rem}.ail-chip-top{display:flex;align-items:center;gap:.4rem}.ail-chip-id{font-size:.9rem;font-weight:700;color:var(--accent);flex-shrink:0}.ail-chip-ref{font-size:.72rem;font-weight:600;font-family:monospace;color:var(--muted);white-space:nowrap;flex-shrink:0}.ail-chip-machine{font-size:.7rem;color:var(--muted);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;opacity:.7}.ail-chip-time{font-size:.68rem;color:var(--muted);white-space:nowrap;margin-left:auto;flex-shrink:0}.ail-chip-builder{font-size:.68rem;color:var(--muted);opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ail-chip-issue{font-size:.78rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ail-chip-bottom{display:flex;align-items:center;gap:.4rem;margin-top:.15rem}.ail-chip-status-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.ail-archive-btn{margin-left:auto;padding:.1rem .45rem;font-size:.68rem;font-weight:600;border-radius:4px;border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;opacity:0;transition:opacity .15s,color .15s}.ail-chip:hover .ail-archive-btn{opacity:1}.ail-archive-btn:hover{color:var(--text);border-color:var(--text)}.ail-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ail-status-running .ail-chip-status-label,.ail-status-running .ail-dot{color:#22c55e;background:#22c55e}.ail-status-running{animation:blink-running 1.2s ease-in-out infinite}.ail-status-needs-input .ail-chip-status-label,.ail-status-needs-input .ail-dot{color:#ef4444;background:#ef4444}.ail-status-needs-input{animation:blink-needs-input 1s ease-in-out infinite}.ail-status-waiting-mb .ail-chip-status-label,.ail-status-waiting-mb .ail-dot{color:#f59e0b;background:#f59e0b}.ail-status-waiting-mb{animation:blink-waiting-mb 1.2s ease-in-out infinite}.ail-status-done .ail-chip-status-label{color:#22c55e}.ail-status-done .ail-dot{background:#22c55e}.ail-status-failed .ail-chip-status-label,.ail-status-failed .ail-dot,.ail-status-stopped .ail-chip-status-label,.ail-status-stopped .ail-dot{color:#ef4444;background:#ef4444}.ail-status-mb-closed .ail-chip-status-label,.ail-status-mb-closed .ail-dot{color:#f97316;background:#f97316}.ai-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);flex-shrink:0;margin:0 -1rem;padding:0 1rem}.ai-tab{position:relative;background:none;border:none;border-bottom:2px solid transparent;color:var(--muted);font-size:.95rem;font-weight:500;padding:.45rem 1rem;cursor:pointer;display:flex;align-items:center;gap:.4rem;white-space:nowrap;transition:color .15s,border-color .15s}.ai-tab:hover{color:var(--text)}.ai-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.ai-tab-badge{background:#a855f7;color:#fff;font-size:.65rem;font-weight:700;border-radius:999px;padding:0 .35rem;min-width:1.1rem;text-align:center;line-height:1.4}.ai-tab-pane{flex:1;min-height:0;display:flex;flex-direction:column;gap:.75rem}.ai-tab-pane--diagnostics{overflow-y:auto}.ai-tab-pane--agent{overflow:hidden}.conv-chat-panel{position:relative;display:flex;flex-direction:column;height:100%;min-height:380px;max-height:620px;background:var(--surface-2);border:1px solid color-mix(in srgb,#6b21a8 30%,var(--border));border-radius:8px;overflow:hidden}.ai-panel-card--conversation{flex:1;min-height:0;overflow:hidden}.ai-tab-pane--agent .conv-chat-panel{flex:1;min-height:0;max-height:none}.conv-chat-header{display:flex;align-items:center;justify-content:space-between;padding:.6rem .8rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,#6b21a8 8%,var(--surface-2));flex-shrink:0}.conv-chat-header-title{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.conv-chat-icon{font-size:1rem}.conv-chat-header-right{display:flex;align-items:center;gap:.5rem}.conv-state-badge{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:999px;white-space:nowrap;letter-spacing:.02em}.conv-state--open{background:color-mix(in srgb,#16a34a 18%,transparent);color:#16a34a;border:1px solid color-mix(in srgb,#16a34a 35%,transparent)}.conv-state--escalating{background:color-mix(in srgb,#d97706 18%,transparent);color:#d97706;border:1px solid color-mix(in srgb,#d97706 35%,transparent)}.conv-state--closed{background:color-mix(in srgb,#6b7280 18%,transparent);color:#6b7280;border:1px solid color-mix(in srgb,#6b7280 35%,transparent)}@media (prefers-color-scheme: dark){.conv-state--open{color:#4ade80;background:color-mix(in srgb,#4ade80 15%,transparent);border-color:color-mix(in srgb,#4ade80 30%,transparent)}.conv-state--escalating{color:#fbbf24;background:color-mix(in srgb,#fbbf24 15%,transparent);border-color:color-mix(in srgb,#fbbf24 30%,transparent)}.conv-state--closed{color:#9ca3af;background:color-mix(in srgb,#9ca3af 15%,transparent);border-color:color-mix(in srgb,#9ca3af 30%,transparent)}}.conv-chat-mb-subtitle{display:block;font-size:.71rem;color:var(--muted);font-weight:400;margin-top:1px}.conv-chat-ref{display:block;font-size:.7rem;color:var(--muted);font-family:monospace;margin-top:.1rem;-webkit-user-select:all;user-select:all;cursor:text}.conv-inbox-strip{width:100%;display:flex;align-items:center;gap:.1rem;border-bottom:1px solid var(--border);flex-shrink:0;padding:.2rem .6rem;background:color-mix(in srgb,var(--accent) 5%,var(--surface-2))}.conv-inbox-strip-btn{display:flex;align-items:center;gap:.3rem;padding:.18rem .5rem;background:none;border:1px solid transparent;border-radius:4px;cursor:pointer;font-size:.78rem;color:var(--muted);transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.conv-inbox-strip-btn:hover{background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));border-color:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--text)}.conv-inbox-strip-label{font-weight:500}.conv-inbox-strip-count{font-weight:700;color:var(--accent);min-width:1rem;text-align:center}.conv-inbox-strip-count--unread{color:#a855f7}.conv-inbox-strip-badge{background:#a855f7;color:#fff;font-size:.65rem;font-weight:700;border-radius:999px;padding:0 .35rem;line-height:1.45}.conv-inbox-strip-divider{color:var(--border);flex-shrink:0;padding:0 .15rem;font-size:.9rem;-webkit-user-select:none;user-select:none}.conv-inbox-pane{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--surface-2)}.conv-inbox-pane-header{display:flex;align-items:center;gap:.5rem;padding:.4rem .5rem .4rem 0;border-bottom:1px solid var(--border);flex-shrink:0}.conv-inbox-tabs{display:flex;align-items:stretch;gap:0;flex-shrink:0}.conv-inbox-tab{background:none;border:none;border-right:1px solid var(--border);border-bottom:2px solid transparent;padding:.25rem .6rem;font-size:.78rem;color:var(--muted);cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}.conv-inbox-tab:hover{color:var(--text)}.conv-inbox-tab--active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.conv-inbox-filter-label{display:flex;align-items:center;gap:.3rem;font-size:.73rem;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.conv-inbox-pane-close{background:none;border:1px solid var(--border);cursor:pointer;font-size:.75rem;font-weight:500;color:var(--muted);padding:3px 8px;border-radius:4px;transition:color .15s,background .15s,border-color .15s;flex-shrink:0;white-space:nowrap}.conv-inbox-pane-close:hover{color:var(--text);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.conv-inbox-pane-list{flex:1;overflow-y:auto;padding:.4rem .5rem;display:flex;flex-direction:column;gap:.4rem}.conv-inbox-pane-item{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.35rem .5rem;transition:opacity .2s}.conv-inbox-pane-item--acked{opacity:.45}.conv-inbox-pane-footer{padding:.4rem .5rem;border-top:1px solid var(--border);display:flex;justify-content:flex-end;flex-shrink:0}.conv-inbox-item-meta{display:flex;align-items:center;gap:.4rem;margin-bottom:.25rem}.conv-inbox-badge{font-size:.62rem;font-weight:700;padding:1px 7px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;flex-shrink:0}.conv-inbox-badge--inform{background:color-mix(in srgb,#60a5fa 20%,transparent);color:#60a5fa}.conv-inbox-badge--request{background:color-mix(in srgb,#a78bfa 20%,transparent);color:#a78bfa}.conv-inbox-badge--grant{background:color-mix(in srgb,#4ade80 20%,transparent);color:#4ade80}.conv-inbox-badge--deny{background:color-mix(in srgb,#f87171 20%,transparent);color:#f87171}.conv-inbox-badge--escalate{background:color-mix(in srgb,#fb923c 20%,transparent);color:#fb923c}.conv-inbox-badge--deescalate{background:color-mix(in srgb,#34d399 20%,transparent);color:#34d399}.conv-inbox-badge--cancel{background:color-mix(in srgb,#94a3b8 20%,transparent);color:#94a3b8}.conv-inbox-badge--reopen{background:color-mix(in srgb,#38bdf8 20%,transparent);color:#38bdf8}.conv-inbox-item-time{font-size:.65rem;color:var(--muted);margin-left:auto;flex-shrink:0}.conv-inbox-ack{background:none;border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:.68rem;color:var(--muted);padding:0 5px;flex-shrink:0;line-height:1.4;transition:color .15s,border-color .15s}.conv-inbox-ack:hover{color:#4ade80;border-color:#4ade80}.conv-inbox-acked-label{font-size:.68rem;color:#4ade80;opacity:.6;flex-shrink:0}.conv-inbox-item-content{font-size:.8rem;color:var(--text);line-height:1.45;white-space:pre-wrap;word-break:break-word}.conv-inbox-empty{font-size:.77rem;color:var(--muted);text-align:center;padding:.5rem 0;margin:0}.conv-inbox-ack-all{background:none;border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:.7rem;color:var(--muted);padding:2px 8px;transition:color .15s,border-color .15s}.conv-inbox-ack-all:hover{color:#4ade80;border-color:#4ade80}.conv-outbox-status{font-size:.65rem;font-weight:600;white-space:nowrap;flex-shrink:0}.conv-outbox-status--replied{color:#4ade80}.conv-outbox-status--pending{color:var(--muted);opacity:.7}.conv-outbox-status--error{color:#f87171}.conv-msg-id-row{display:flex;align-items:center;gap:.3rem;margin:.15rem 0 .1rem}.conv-msg-id-label{font-size:.6rem;font-weight:600;text-transform:uppercase;color:var(--muted);flex-shrink:0}.conv-msg-id{font-size:.65rem;font-family:monospace;color:var(--muted);background:color-mix(in srgb,var(--border) 40%,transparent);border-radius:3px;padding:1px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:28ch}.conv-chat-messages{flex:1;overflow-y:auto;padding:.6rem .8rem;display:flex;flex-direction:column;gap:.5rem}.conv-chat-empty{color:var(--muted);font-size:.8rem;text-align:center;margin-top:1rem}.conv-msg{display:flex;flex-direction:column;gap:.15rem;max-width:90%}.conv-msg--fo{align-self:flex-end;align-items:flex-end}.conv-msg--mb,.conv-msg--agent{align-self:flex-start;align-items:flex-start}.conv-msg-label{font-size:.68rem;color:var(--muted);font-weight:600;letter-spacing:.03em;text-transform:uppercase}.conv-msg-time{font-size:.65rem;color:var(--muted);opacity:.7}.conv-msg-bubble{padding:.4rem .65rem;border-radius:10px;font-size:.83rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.conv-msg-bubble--fo{background:#6b21a8;color:#fff;border-bottom-right-radius:3px}.conv-msg-bubble--agent{background:color-mix(in srgb,#6b21a8 12%,var(--surface));color:var(--text);border:1px solid color-mix(in srgb,#6b21a8 20%,var(--border));border-bottom-left-radius:3px}.conv-msg-bubble--mb{background:color-mix(in srgb,#f59e0b 10%,var(--surface));color:var(--text);border:1px solid color-mix(in srgb,#f59e0b 30%,var(--border));border-bottom-left-radius:3px}.conv-msg-thinking{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;min-width:48px}.conv-thinking-dot{width:6px;height:6px;border-radius:50%;background:#a855f7;animation:conv-blink 1.2s ease-in-out infinite}.conv-thinking-dot:nth-child(2){animation-delay:.2s}.conv-thinking-dot:nth-child(3){animation-delay:.4s}@keyframes conv-blink{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}.conv-action-panel{border-top:1px solid var(--border);background:var(--surface-2);flex-shrink:0;padding:.55rem .7rem .6rem;display:flex;flex-direction:column;gap:.45rem}.conv-action-buttons{display:flex;flex-wrap:wrap;gap:.4rem}.conv-action-btn{padding:.3rem .75rem;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:opacity .15s;white-space:nowrap}.conv-action-btn:disabled{opacity:.5;cursor:not-allowed}.conv-action-btn--primary{background:#7c3aed;color:#fff;border-color:#7c3aed}.conv-action-btn--primary:hover:not(:disabled){background:#6d28d9}.conv-action-btn--secondary{background:transparent;color:var(--text);border-color:var(--border)}.conv-action-btn--secondary:hover:not(:disabled){background:var(--surface)}.conv-action-btn--danger{background:transparent;color:#dc2626;border-color:#dc2626}.conv-action-btn--danger:hover:not(:disabled){background:color-mix(in srgb,#dc2626 10%,transparent)}.conv-action-close-btn{margin-left:auto}.conv-action-btn--active{outline:2px solid #a855f7;outline-offset:1px}.conv-sub-panel{background:color-mix(in srgb,#6b21a8 8%,var(--surface));border:1px solid color-mix(in srgb,#6b21a8 30%,var(--border));border-radius:6px;padding:.55rem .65rem;display:flex;flex-direction:column;gap:.4rem}.conv-sub-header{display:flex;align-items:center;justify-content:space-between}.conv-sub-title{font-size:.82rem;font-weight:600;color:var(--text)}.conv-sub-close{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.9rem;line-height:1;padding:0 .1rem}.conv-sub-close:hover{color:var(--text)}.conv-sub-file-row{display:flex;align-items:center;gap:.5rem}.conv-sub-file-input{display:none}.conv-sub-file-label{font-size:.78rem;color:var(--muted);cursor:pointer;border:1px dashed var(--border);border-radius:4px;padding:.2rem .55rem;transition:border-color .15s,color .15s}.conv-sub-file-label:hover{border-color:#a855f7;color:var(--text)}.conv-sub-file-clear{background:none;border:none;color:var(--muted);cursor:pointer;font-size:.8rem;padding:0}.conv-sub-file-clear:hover{color:var(--danger)}.conv-sub-footer{display:flex;justify-content:flex-end;gap:.4rem}.conv-chat-input-row{display:flex;gap:.4rem;align-items:flex-end}.conv-chat-input-area{flex:1;min-width:0}.conv-chat-send-btn{flex-shrink:0;background:var(--accent);color:#fff;border:none;border-radius:6px;width:2.2rem;height:2.2rem;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;align-self:flex-end;transition:opacity .15s}.conv-chat-send-btn:hover:not(:disabled){opacity:.85}.conv-chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.conv-action-error{font-size:.8rem;color:#dc2626;margin:0}.conv-action-closed-note{font-size:.8rem;color:var(--muted);margin:0}.conv-action-closed-reason{font-style:italic}.conv-chat-textarea{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.83rem;padding:.35rem .5rem;resize:none;font-family:inherit;outline:none;line-height:1.4;box-sizing:border-box}.conv-chat-textarea:focus{border-color:#a855f7}.conv-chat-textarea:disabled{opacity:.6}.conv-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:500}.conv-modal{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.2rem 1.4rem 1rem;width:min(420px,90vw);display:flex;flex-direction:column;gap:.8rem;box-shadow:0 8px 32px #00000040}.conv-modal-header{display:flex;justify-content:space-between;align-items:center}.conv-modal-close{background:none;border:none;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1;padding:0}.conv-modal-close:hover{color:var(--text)}.conv-modal-label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--text)}.conv-modal-select{padding:.3rem .5rem;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);font-size:.83rem}.conv-modal-textarea{width:100%;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.83rem;padding:.4rem .5rem;resize:vertical;font-family:inherit;outline:none;line-height:1.4;box-sizing:border-box}.conv-modal-textarea:focus{border-color:#a855f7}.conv-modal-required{color:#dc2626;font-size:.75rem}.conv-modal-optional{color:var(--muted);font-size:.75rem}.conv-modal-footer{display:flex;justify-content:flex-end;gap:.5rem}.btn-xs{padding:.2rem .5rem;font-size:.75rem;border-radius:4px}.iri-ctx-menu{background:var(--surface-2, #252840);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 16px #00000040;padding:4px 0;min-width:190px}.iri-ctx-menu-item{display:block;width:100%;text-align:left;padding:7px 14px;background:none;border:none;cursor:pointer;font-size:.85rem;color:var(--text);white-space:nowrap}.iri-ctx-menu-item:hover{background:var(--hover, rgba(99,102,241,.08))}.rag-pipeline-row{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-bottom:.75rem}.rag-pipeline-option{display:flex;align-items:center;gap:.4rem;cursor:pointer;font-size:.875rem}.rag-pipeline-option input{cursor:pointer}.rag-badge-recommended{display:inline-block;font-size:.65rem;background:var(--accent, #0071c5);color:#fff;border-radius:3px;padding:0 4px;margin-left:4px;vertical-align:middle}.rag-dropzone{border:2px dashed var(--border, #3a3a4a);border-radius:6px;padding:1.5rem;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;margin-bottom:.75rem}.rag-dropzone:hover,.rag-dropzone-active{border-color:var(--accent, #0071c5);background:#0071c50f}.rag-dropzone-uploading{cursor:wait;opacity:.7}.rag-dropzone-text{font-size:.875rem;color:var(--text-muted, #888)}.rag-upload-status{padding:.5rem .75rem;border-radius:4px;font-size:.85rem;margin-bottom:.75rem}.rag-upload-ok{background:#22c55e1f;color:var(--success, #22c55e)}.rag-upload-error{background:#ef44441f;color:var(--error, #ef4444)}.rag-doc-table{width:100%;border-collapse:collapse;font-size:.875rem;margin-top:.5rem}.rag-doc-table th{text-align:left;padding:.4rem .5rem;color:var(--text-muted, #888);border-bottom:1px solid var(--border, #3a3a4a);font-weight:500}.rag-doc-table td{padding:.45rem .5rem}.rag-doc-table tr:not(:last-child) td{border-bottom:1px solid var(--border-subtle, #252533)}.rag-doc-name{font-family:monospace;font-size:.8rem;word-break:break-all}.rag-doc-chunks{text-align:right;color:var(--text-muted, #888)}.rag-doc-date{font-size:.8rem}.rag-doc-delete{background:none;border:none;color:var(--text-muted, #888);cursor:pointer;padding:2px 6px;border-radius:3px;font-size:.85rem;transition:color .15s,background .15s}.rag-doc-delete:hover{color:var(--error, #ef4444);background:#ef44441a}.rag-progress-wrap{margin:.5rem 0 .25rem;display:flex;flex-direction:column;gap:.3rem}.rag-progress-bar{height:4px;border-radius:2px;background:var(--surface-2, #2a2a2a);overflow:hidden;position:relative}.rag-progress-bar:after{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:#3b82f6;border-radius:2px;animation:rag-progress-slide 1.4s ease-in-out infinite}@keyframes rag-progress-slide{0%{left:-40%}to{left:100%}}.rag-progress-label{font-size:.78rem;color:var(--muted)}.rag-progress-bar-wrap{margin-top:.25rem}.rag-progress-bar-det{height:3px;border-radius:2px;background:var(--surface-2, #2a2a2a);overflow:hidden}.rag-progress-bar-fill{height:100%;background:#3b82f6;border-radius:2px;transition:width .4s ease}.rag-job-icon{font-style:normal;margin-right:.3rem}.rag-job-active td{color:var(--text)}.rag-job-active .rag-doc-name{font-style:italic}.rag-job-done td{color:#22c55e}.rag-job-error td{color:var(--danger, #ef4444)}.rag-query-section{border-top:1px solid var(--border);padding-top:.75rem;margin-top:.25rem}.rag-query-options{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.5rem}.rag-query-opt-label{display:flex;flex-direction:column;gap:.15rem;font-size:.75rem;color:var(--muted)}.rag-query-opt-num{width:5rem;padding:.2rem .35rem;font-size:.8rem;background:var(--surface-2);border:1px solid var(--border);border-radius:4px;color:var(--text)}.rag-query-stats{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.75rem;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:.3rem .6rem;margin-bottom:.4rem}.rag-query-stats strong{color:var(--text)}.rag-query-stats-sep{opacity:.4}.rag-query-results{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.rag-query-hit{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:.6rem .75rem;cursor:pointer;transition:border-color .15s}.rag-query-hit:hover,.rag-query-hit-expanded{border-color:var(--accent, #4a9eff)}.rag-query-hit-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem;flex-wrap:wrap}.rag-query-hit-rank{font-size:.7rem;font-weight:700;color:var(--muted)}.rag-query-expand{margin-left:auto;font-size:.65rem;color:var(--muted);-webkit-user-select:none;user-select:none}.rag-query-score{font-size:.7rem;font-weight:700;font-family:monospace;background:var(--accent);color:#fff;padding:.1rem .35rem;border-radius:3px}.rag-query-meta{font-size:.72rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rag-query-hit-text{font-size:.8rem;color:var(--text);line-height:1.5;white-space:pre-wrap;margin-top:.4rem}.rag-query-hit-image{max-width:100%;border-radius:4px;margin-top:.5rem;border:1px solid var(--border)}.alerta-root{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--surface);font-size:.875rem}.alerta-severity-bar{display:flex;gap:.5rem;padding:.5rem 1rem;border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center}.alerta-sev-chip{display:flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border-radius:4px;border-left:3px solid var(--sev-color, #6b7280);background:var(--surface-2);cursor:default}.alerta-sev-chip-count{font-weight:700;font-variant-numeric:tabular-nums;color:var(--sev-color, #6b7280);font-size:1rem;line-height:1;min-width:1ch;text-align:right}.alerta-sev-chip-label{color:var(--muted);font-size:.72rem;text-transform:capitalize}.alerta-filter-bar{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-bottom:1px solid var(--border);flex-wrap:wrap}.alerta-status-tabs{display:flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.alerta-status-tab{padding:.3rem .7rem;font-size:.78rem;border:none;border-right:1px solid var(--border);background:none;cursor:pointer;color:var(--text);transition:background .1s}.alerta-status-tab:last-child{border-right:none}.alerta-status-tab:hover:not(.alerta-status-tab--active){background:var(--surface-2)}.alerta-status-tab--active{background:var(--primary, #3b82f6);color:#fff}.alerta-filter-search{flex:1;min-width:12rem;max-width:24rem;padding:.3rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.8rem}.alerta-env-select{padding:.3rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.8rem;cursor:pointer}.alerta-refresh-select{padding:.3rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.78rem;cursor:pointer}.alerta-refresh-btn{padding:.3rem .6rem;border:1px solid var(--border);border-radius:6px;background:none;cursor:pointer;color:var(--text);font-size:.85rem;margin-left:auto;transition:background .1s}.alerta-refresh-btn:hover:not(:disabled){background:var(--surface-2)}.alerta-refresh-btn:disabled{opacity:.5;cursor:default}.alerta-bulk-bar{display:flex;align-items:center;gap:.45rem;padding:.35rem 1rem;background:color-mix(in srgb,var(--primary, #3b82f6) 8%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--primary, #3b82f6) 25%,transparent);flex-shrink:0;flex-wrap:wrap}.alerta-bulk-count{font-weight:600;font-size:.82rem;color:var(--primary, #3b82f6);min-width:5rem}.alerta-bulk-clear{border:1px solid var(--border);border-radius:4px;background:none;cursor:pointer;color:var(--muted);font-size:.75rem;padding:.18rem .5rem;transition:background .1s}.alerta-bulk-clear:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.alerta-bulk-clear:disabled{opacity:.5;cursor:default}.alerta-bulk-sep{width:1px;height:1.2rem;background:var(--border);flex-shrink:0}.alerta-bulk-btn{font-size:.75rem}.alerta-bulk-busy{color:var(--muted);font-size:.78rem;font-style:italic;margin-left:.25rem}.alerta-bulk-result{font-size:.78rem;font-weight:500;margin-left:.25rem}.alerta-bulk-result--ok{color:#16a34a}.alerta-bulk-result--warn{color:#f97316}@media (prefers-color-scheme: dark){.alerta-bulk-result--ok{color:#4ade80}}:root[data-theme=dark] .alerta-bulk-result--ok{color:#4ade80}:root[data-theme=light] .alerta-bulk-result--ok{color:#16a34a}.alerta-cb{width:14px;height:14px;cursor:pointer;accent-color:var(--primary, #3b82f6);display:block}.alerta-td-cb{padding:0 .5rem!important;width:30px;min-width:30px;text-align:center;vertical-align:middle}.alerta-row--checked td{background:color-mix(in srgb,var(--primary, #3b82f6) 6%,transparent)}.alerta-row--checked:hover td{background:color-mix(in srgb,var(--primary, #3b82f6) 12%,transparent)}.alerta-content{display:flex;flex:1;overflow:hidden}.alerta-table-wrap{flex:1;overflow:auto}.alerta-table{width:100%;border-collapse:collapse;font-size:.8rem}.alerta-table th{text-align:left;padding:.4rem .6rem;background:var(--surface-2);border-bottom:2px solid var(--border);font-weight:600;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0;z-index:1;white-space:nowrap}.alerta-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.alerta-th-sortable:hover{color:var(--fg);background:var(--surface-3, color-mix(in srgb, var(--surface-2) 80%, var(--border)))}.alerta-th-active{color:var(--primary, #3b82f6)}.alerta-sort-indicator{display:inline-block;margin-left:.2rem;font-size:.6rem;opacity:.35;vertical-align:middle}.alerta-th-active .alerta-sort-indicator{opacity:1}.alerta-table td{padding:.32rem .6rem;border-bottom:1px solid var(--border);vertical-align:middle;max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alerta-row{cursor:pointer}.alerta-row:hover td{background:var(--surface-2)}.alerta-row--selected td{background:color-mix(in srgb,var(--primary, #3b82f6) 8%,transparent)}.alerta-td-sev{padding:0!important;width:4px;min-width:4px}.alerta-sev-stripe{display:block;width:4px;min-height:2.1rem}.alerta-badge{display:inline-block;padding:.1rem .4rem;border-radius:3px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#fff;white-space:nowrap}.alerta-age{color:var(--muted);font-size:.75rem;white-space:nowrap;font-variant-numeric:tabular-nums}.alerta-dups{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.alerta-empty{padding:3rem;text-align:center;color:var(--muted);font-size:.85rem;flex:1}.alerta-pagination{display:flex;align-items:center;gap:.5rem;padding:.4rem 1rem;border-top:1px solid var(--border);font-size:.8rem;flex-shrink:0}.alerta-pagination button{padding:.2rem .6rem;border:1px solid var(--border);border-radius:4px;background:none;cursor:pointer;color:var(--text);font-size:.8rem;transition:background .1s}.alerta-pagination button:disabled{opacity:.4;cursor:default}.alerta-pagination button:hover:not(:disabled){background:var(--surface-2)}.alerta-pagination-info{color:var(--muted)}.alerta-error-box{background:#fef2f2;border-bottom:1px solid #fecaca;color:#991b1b;padding:.5rem 1rem;font-size:.83rem;flex-shrink:0}@media (prefers-color-scheme: dark){.alerta-error-box{background:#450a0a;border-color:#7f1d1d;color:#fca5a5}}:root[data-theme=dark] .alerta-error-box{background:#450a0a;border-color:#7f1d1d;color:#fca5a5}:root[data-theme=light] .alerta-error-box{background:#fef2f2;border-color:#fecaca;color:#991b1b}.alerta-detail{width:30rem;min-width:22rem;border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;background:var(--surface);flex-shrink:0}.alerta-detail-header{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border-bottom:1px solid var(--border);flex-shrink:0}.alerta-detail-title{font-weight:600;font-size:.85rem;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alerta-detail-close{border:none;background:none;cursor:pointer;color:var(--muted);font-size:1.2rem;line-height:1;padding:.1rem .3rem;border-radius:4px;transition:background .1s}.alerta-detail-close:hover{background:var(--surface-2)}.alerta-detail-body{flex:1;overflow-y:auto;padding:.75rem}.alerta-detail-actions{display:flex;gap:.4rem;padding:.5rem .75rem;border-top:1px solid var(--border);flex-wrap:wrap;flex-shrink:0;align-items:center}.alerta-detail-note{flex:1;min-width:8rem;padding:.28rem .6rem;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text);font-size:.8rem}.alerta-action-btn{padding:.28rem .65rem;border:1px solid var(--border);border-radius:5px;background:none;cursor:pointer;font-size:.78rem;color:var(--text);transition:background .1s;white-space:nowrap}.alerta-action-btn:disabled{opacity:.5;cursor:default}.alerta-action-btn--ack{border-color:#f97316;color:#f97316}.alerta-action-btn--close{border-color:#6b7280;color:#6b7280}.alerta-action-btn--shelve{border-color:#a855f7;color:#a855f7}.alerta-action-btn--open{border-color:#ef4444;color:#ef4444}.alerta-action-btn--ack:hover:not(:disabled){background:color-mix(in srgb,#f97316 12%,transparent)}.alerta-action-btn--close:hover:not(:disabled){background:color-mix(in srgb,#6b7280 12%,transparent)}.alerta-action-btn--shelve:hover:not(:disabled){background:color-mix(in srgb,#a855f7 12%,transparent)}.alerta-action-btn--open:hover:not(:disabled){background:color-mix(in srgb,#ef4444 12%,transparent)}.alerta-dl{display:grid;grid-template-columns:auto 1fr;gap:.2rem .75rem;font-size:.8rem;margin:0}.alerta-dt{color:var(--muted);font-weight:500;white-space:nowrap;padding:.12rem 0;font-size:.75rem}.alerta-dd{color:var(--text);margin:0;padding:.12rem 0;word-break:break-all;font-size:.8rem}.alerta-dd code{font-family:ui-monospace,monospace;font-size:.72rem;background:var(--surface-2);padding:.1rem .3rem;border-radius:3px}.alerta-detail-section{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:.8rem 0 .3rem;border-bottom:1px solid var(--border);padding-bottom:.2rem}.alerta-history{display:flex;flex-direction:column;gap:.5rem;margin-top:.4rem}.alerta-history-item{display:flex;gap:.5rem;font-size:.78rem}.alerta-history-dot{width:8px;height:8px;border-radius:50%;margin-top:.28rem;flex-shrink:0}.alerta-history-content{flex:1}.alerta-history-meta{color:var(--muted);font-size:.7rem;margin-bottom:.1rem}.alerta-history-text{color:var(--text);display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.alerta-td-resource{cursor:context-menu}.ngsi-root{color:#1e293b;background:#f8fafc;min-height:100%;font-size:14px;line-height:1.5;font-family:inherit}.ngsi-root input:not([type=checkbox]),.ngsi-root select,.ngsi-root textarea{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#1e293b;padding:5px 10px;font-size:13px;font-family:inherit;line-height:1.4;box-sizing:border-box;width:100%}.ngsi-root input:not([type=checkbox]):focus,.ngsi-root select:focus,.ngsi-root textarea:focus{outline:2px solid #6366f1;outline-offset:-1px;border-color:#6366f1}.ngsi-root input:not([type=checkbox]):disabled,.ngsi-root select:disabled,.ngsi-root textarea:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed;opacity:1}.ngsi-root h2{font-size:13px;font-weight:600;text-transform:none;letter-spacing:normal;color:#1e293b;margin:0}.ngsi-root h3{font-size:12px;font-weight:600;color:#374151;margin:0}.ngsi-root details>summary{color:#64748b;cursor:pointer}.ngsi-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:5px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid #d1d5db;background:#fff;color:#374151;line-height:1.4;transition:background .12s,border-color .12s,color .12s;white-space:nowrap;font-family:inherit;box-sizing:border-box;text-decoration:none;-webkit-user-select:none;user-select:none}.ngsi-btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.ngsi-btn:not(:disabled):hover{background:#f8fafc;border-color:#9ca3af}.ngsi-btn--primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.ngsi-btn--primary:not(:disabled):hover{background:#2563eb;border-color:#2563eb}.ngsi-btn--danger{color:#dc2626;border-color:#fca5a5}.ngsi-btn--danger:not(:disabled):hover{border-color:#ef4444;background:#fff8f8}.ngsi-btn--amber{color:#b45309;border-color:#fbbf24}.ngsi-btn--amber:not(:disabled):hover{border-color:#f59e0b;background:#fffbeb}.ngsi-btn--dark{background:#1e293b;color:#fff;border-color:#1e293b}.ngsi-btn--dark:not(:disabled):hover{background:#334155;border-color:#334155}.ngsi-btn--ghost{background:transparent;color:#64748b;border-color:transparent}.ngsi-btn--ghost:not(:disabled):hover{background:#f1f5f9;color:#1e293b}.ngsi-btn--sm{padding:3px 10px;font-size:12px}.ngsi-btn--xs{padding:2px 7px;font-size:11px;border-radius:4px}.ngsi-toolbar{display:flex;align-items:center;gap:8px;padding:7px 16px;background:#fff;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;min-height:42px}.ngsi-toolbar-right{margin-left:auto;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ngsi-avatar{width:26px;height:26px;border-radius:50%;background:#6366f1;color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;-webkit-user-select:none;user-select:none}.ngsi-user-name{font-size:13px;color:#374151;font-weight:500}.ngsi-token-pill{font-size:11px;font-weight:500;padding:1px 8px;border-radius:999px;display:inline-flex;align-items:center}.ngsi-token-pill--warn{color:#d97706;background:#fef9c3}.ngsi-token-pill--error{color:#dc2626;background:#fee2e2}.ngsi-token-pill--spin{color:#6366f1;background:#ede9fe;animation:ngsi-pulse 1.5s ease-in-out infinite}@keyframes ngsi-pulse{0%,to{opacity:1}50%{opacity:.5}}.ngsi-auth-warn{display:flex;align-items:center;gap:10px;padding:8px 14px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#92400e;font-size:13px}.ngsi-config-panel{padding:20px 24px;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:14px}.ngsi-config-hint{font-size:12px;color:#94a3b8}.ngsi-form-group{display:flex;flex-direction:column;gap:4px}.ngsi-form-label{font-size:12px;font-weight:500;color:#64748b}.ngsi-form-hint{font-size:11px;color:#94a3b8;font-weight:400;margin-left:4px}.ngsi-form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ngsi-form-actions{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid #f1f5f9}.ngsi-saved-msg{font-size:13px;font-weight:500;color:#059669}.ngsi-config-sep{border:none;border-top:1px solid #f1f5f9;margin:4px 0}.ngsi-auth-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:10px}.ngsi-login-error-msg{font-size:12px;color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:6px 10px}.ngsi-ts-banner{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#b45309;color:#fff;font-size:13px;font-weight:500;flex-wrap:wrap}.ngsi-ts-banner-ts{font-family:ui-monospace,monospace;font-size:12px;opacity:.9}.ngsi-ts-banner-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.ngsi-ts-banner .ngsi-btn{background:transparent;color:#fff;border-color:#ffffff73}.ngsi-ts-banner .ngsi-btn:not(:disabled):hover{border-color:#fff;background:#ffffff26}.ngsi-content{padding:16px;display:flex;flex-direction:column;gap:14px}.ngsi-query-form{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 3px #0000000a}.ngsi-query-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ngsi-query-label{font-size:12px;font-weight:500;color:#64748b;width:72px;flex-shrink:0}.ngsi-query-label--muted{color:#94a3b8}.ngsi-query-field-url{flex:1;min-width:180px}.ngsi-query-field-type{width:190px;min-width:120px}.ngsi-query-field-id{flex:2;min-width:160px}.ngsi-query-field-idpattern{flex:1;min-width:120px}.ngsi-query-field-attrs{flex:1;min-width:200px}.ngsi-query-field-q{flex:1;min-width:120px;display:flex;align-items:center;gap:4px}.ngsi-query-field-q>input{flex:1;width:auto;min-width:0}.ngsi-query-field-limit{width:72px}.ngsi-qb-toggle{flex-shrink:0;width:28px;height:28px;border:1px solid #cbd5e1;border-radius:4px;background:#f8fafc;cursor:pointer;color:#64748b;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;font-family:inherit;transition:background .1s,border-color .1s,color .1s}.ngsi-qb-toggle:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.ngsi-qb-toggle--active{background:#eff6ff;border-color:#6366f1;color:#6366f1}.ngsi-qb-panel{border:1px solid #e0e7ff;border-radius:8px;background:#fafbff;padding:14px;display:flex;flex-direction:column;gap:12px}.ngsi-qb-header{display:flex;flex-direction:column;gap:4px}.ngsi-qb-title-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ngsi-qb-attr-loading{font-size:11px;color:#94a3b8;font-style:italic}.ngsi-qb-title{font-size:12px;font-weight:600;color:#4338ca;letter-spacing:.03em;text-transform:uppercase}.ngsi-qb-hint{font-size:11px;color:#94a3b8;margin:0;line-height:1.5}.ngsi-qb-hint code{font-family:ui-monospace,monospace;background:#f1f5f9;padding:0 3px;border-radius:3px}.ngsi-qb-connector{display:flex;align-items:center;gap:4px;margin-left:auto}.ngsi-qb-connector-label{font-size:11px;color:#64748b}.ngsi-qb-conn-btn{border:1px solid #cbd5e1;border-radius:4px;background:#fff;color:#475569;font-size:11px;font-weight:600;padding:2px 8px;cursor:pointer;font-family:inherit;transition:background .1s,border-color .1s}.ngsi-qb-conn-btn:hover{background:#f1f5f9}.ngsi-qb-conn-btn--active{background:#6366f1;border-color:#6366f1;color:#fff}.ngsi-qb-id-section{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:#fff;border:1px solid #e0e7ff;border-radius:6px}.ngsi-qb-id-row{display:flex;align-items:center;gap:8px}.ngsi-qb-id-label{font-size:11px;font-weight:600;color:#64748b;width:80px;flex-shrink:0;cursor:help}.ngsi-qb-id-input{flex:1;width:auto!important;font-family:ui-monospace,monospace!important;font-size:12px!important}.ngsi-qb-section-title{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em;padding-bottom:2px;border-bottom:1px solid #e0e7ff}.ngsi-qb-conditions{display:flex;flex-direction:column;gap:6px}.ngsi-qb-row{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.ngsi-qb-idx{font-size:10px;font-weight:700;color:#6366f1;width:44px;flex-shrink:0;text-align:right;letter-spacing:.02em}.ngsi-qb-attr{flex:2;min-width:100px!important;width:auto!important;font-family:ui-monospace,monospace!important;font-size:12px!important}.ngsi-qb-op{flex:0 0 auto;width:160px!important;font-size:12px!important}.ngsi-qb-val{flex:1;min-width:80px!important;width:auto!important;font-family:ui-monospace,monospace!important;font-size:12px!important}.ngsi-qb-range{flex:1;display:flex;align-items:center;gap:4px;min-width:0}.ngsi-qb-range .ngsi-qb-val{flex:1;min-width:60px!important}.ngsi-qb-range-sep{font-size:11px;color:#94a3b8;flex-shrink:0;font-family:ui-monospace,monospace}.ngsi-qb-val-placeholder{flex:1;font-size:11px;color:#cbd5e1;padding-left:4px}.ngsi-qb-remove{flex-shrink:0;width:22px;height:22px;border:1px solid #e2e8f0;border-radius:4px;background:none;color:#94a3b8;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;font-family:inherit}.ngsi-qb-remove:hover:not(:disabled){background:#fff1f2;border-color:#fca5a5;color:#dc2626}.ngsi-qb-remove:disabled{opacity:.3;cursor:not-allowed}.ngsi-qb-preview{display:flex;align-items:baseline;gap:6px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:5px;padding:6px 10px;min-height:32px}.ngsi-qb-preview-label{font-size:10px;font-weight:700;color:#94a3b8;flex-shrink:0;font-family:ui-monospace,monospace}.ngsi-qb-preview-q{font-family:ui-monospace,monospace;font-size:12px;color:#1e293b;word-break:break-all}.ngsi-qb-footer{display:flex;align-items:center;gap:8px;padding-top:4px;border-top:1px solid #e0e7ff}.ngsi-qb-add-btn{font-size:12px;color:#6366f1;cursor:pointer;background:none;border:1px dashed #c7d2fe;border-radius:4px;padding:3px 10px;font-family:inherit;transition:background .1s,border-color .1s}.ngsi-qb-add-btn:hover{background:#eff6ff;border-color:#6366f1}.ngsi-query-link{font-size:12px;color:#94a3b8;cursor:pointer;text-decoration:underline;background:none;border:none;padding:0;font-family:inherit}.ngsi-query-link:hover{color:#64748b}.ngsi-ts-notice{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:6px;font-size:12px;color:#92400e}.ngsi-query-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding-top:6px;border-top:1px solid #f1f5f9}.ngsi-error-box{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;color:#dc2626;font-size:13px}.ngsi-info-msg{text-align:center;padding:40px 16px;color:#94a3b8;font-size:13px}.ngsi-loading-msg{text-align:center;padding:40px 16px;color:#94a3b8;font-size:13px;animation:ngsi-pulse 1.5s ease-in-out infinite}.ngsi-entity-list{display:flex;flex-direction:column;gap:8px}.ngsi-entity-list-header{display:flex;align-items:center;gap:10px;padding:6px 0}.ngsi-entity-count{font-size:12px;color:#64748b}.ngsi-unnested-sep{border:none;border-top:2px dashed #cbd5e1;margin:8px 0 4px}.ngsi-unnested-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin-bottom:6px}.ngsi-entity{background:#fff;border:1px solid #e2e8f0;border-radius:8px;border-left-width:3px;overflow:hidden;box-shadow:0 1px 2px #0000000a}.ngsi-entity-header{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.ngsi-entity-header:hover{background:#f8fafc}.ngsi-entity-id{font-size:13px;font-weight:500;font-family:ui-monospace,monospace;color:#1e293b;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ngsi-entity-type-badge{font-size:11px;color:#64748b;background:#f1f5f9;border-radius:4px;padding:1px 6px;font-weight:500;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.ngsi-entity-body{border-top:1px solid #f1f5f9}.ngsi-attr-row{display:flex;align-items:flex-start;gap:8px;padding:5px 12px;font-size:13px;transition:background .1s}.ngsi-attr-row:hover{background:#f8fafc}.ngsi-attr-row--flash{background:#fef3c7}.ngsi-attr-name{font-family:ui-monospace,monospace;font-size:12px;font-weight:500;color:#3b82f6;white-space:nowrap;min-width:120px;flex-shrink:0}.ngsi-attr-type-badge{font-size:10px;font-weight:600;padding:1px 5px;border-radius:3px;border:1px solid;flex-shrink:0}.ngsi-attr-value{flex:1;color:#374151;word-break:break-all;border-radius:3px;padding:1px 4px;margin:-1px -4px}.ngsi-attr-value--editable{cursor:pointer}.ngsi-attr-value--editable:hover{background:#6366f10f;outline:1px dashed #c7d2fe}.ngsi-badge-property{color:#0369a1;border-color:#bae6fd;background:#f0f9ff}.ngsi-badge-relationship{color:#7c3aed;border-color:#ddd6fe;background:#faf5ff}.ngsi-badge-geo{color:#065f46;border-color:#a7f3d0;background:#ecfdf5}.ngsi-badge-language{color:#b45309;border-color:#fde68a;background:#fffbeb}.ngsi-badge-list{color:#0e7490;border-color:#a5f3fc;background:#ecfeff}.ngsi-badge-json{color:#6b7280;border-color:#e5e7eb;background:#f9fafb}.ngsi-badge-vocab{color:#be185d;border-color:#fbcfe8;background:#fdf2f8}.ngsi-depth-0{border-left-color:#94a3b8}.ngsi-depth-1{border-left-color:#60a5fa}.ngsi-depth-2{border-left-color:#34d399}.ngsi-depth-3{border-left-color:#f472b6}.ngsi-depth-4{border-left-color:#fb923c}.ngsi-bg-0{background:#fff}.ngsi-bg-1{background:#f8fafc}.ngsi-bg-2{background:#f1f5f9}.ngsi-bg-3{background:#eef2ff}.ngsi-bg-4{background:#fdf4ff}.ngsi-history-pane{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;margin-top:8px}.ngsi-history-header{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid #f1f5f9;background:#f8fafc;font-size:12px;font-weight:600;color:#374151}.ngsi-history-table{width:100%;border-collapse:collapse;font-size:12px}.ngsi-history-table th{text-align:left;padding:5px 10px;color:#64748b;font-size:11px;font-weight:600;background:#f8fafc;border-bottom:1px solid #e2e8f0}.ngsi-history-table td{padding:5px 10px;border-bottom:1px solid #f8fafc;vertical-align:top;color:#374151}.ngsi-history-table tr:last-child td{border-bottom:none}.ngsi-history-table tr:hover td{background:#f8fafc}.ngsi-hist-row--deleted td{background:#fff5f5}.ngsi-hist-row--deleted:hover td{background:#fee2e2}.ngsi-hist-val--deleted{color:#b91c1c;font-style:italic;font-weight:500}.ngsi-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.ngsi-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #00000040;width:100%;max-width:480px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.ngsi-modal--wide{max-width:640px}.ngsi-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0}.ngsi-modal-title{font-size:15px;font-weight:600;color:#1e293b}.ngsi-modal-body{padding:20px;display:flex;flex-direction:column;gap:14px;flex:1;overflow-y:auto;min-height:0}.ngsi-modal-footer{padding:14px 20px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:8px}.ngsi-modal-close{background:none;border:none;cursor:pointer;color:#94a3b8;font-size:20px;line-height:1;padding:2px 4px;border-radius:4px;font-family:inherit}.ngsi-modal-close:hover{color:#475569;background:#f1f5f9}.ngsi-root input[type=checkbox]{width:14px;height:14px;accent-color:#6366f1;cursor:pointer;flex-shrink:0}.ngsi-mono{font-family:ui-monospace,monospace;font-size:12px}.ngsi-muted{color:#94a3b8}.ngsi-small{font-size:12px}.ngsi-flex{display:flex;align-items:center;gap:6px}.ngsi-gap-2{gap:8px}.ngsi-gap-1{gap:4px}.ngsi-ml-auto{margin-left:auto}.ngsi-flex-1{flex:1}.ngsi-wrap{flex-wrap:wrap}.ngsi-mt-1{margin-top:4px}.ngsi-mt-2{margin-top:8px}.ngsi-entity-head-row{display:flex;align-items:stretch}.ngsi-entity-cb{display:flex;align-items:center;padding:0 6px 0 10px;flex-shrink:0}.ngsi-entity-expand{flex:1;display:flex;align-items:center;gap:8px;padding:8px 12px;text-align:left;background:none;border:none;cursor:pointer;min-width:0;transition:background .12s;font-family:inherit;font-size:14px}.ngsi-entity-expand:hover{background:#0000000a}.ngsi-entity-arrow{font-size:10px;color:#94a3b8;flex-shrink:0;width:12px}.ngsi-entity-attr-count{font-size:11px;color:#cbd5e1;flex-shrink:0}.ngsi-entity-unnest-btn{flex-shrink:0;padding:0 12px;color:#d1d5db;background:none;border:none;border-left:1px solid #e5e7eb;cursor:pointer;font-size:16px;font-family:inherit;transition:color .12s}.ngsi-entity-unnest-btn:hover{color:#8b5cf6}.ngsi-entity-renest-btn{flex-shrink:0;padding:0 12px;color:#8b5cf6;background:none;border:none;border-left:1px solid #e5e7eb;cursor:pointer;font-size:11px;font-weight:500;font-family:inherit;white-space:nowrap;transition:color .12s}.ngsi-entity-renest-btn:hover{color:#7c3aed}.ngsi-entity-pin-btn{flex-shrink:0;padding:0 10px;background:none;border:none;border-left:1px solid #e5e7eb;cursor:pointer;font-size:14px;line-height:1;opacity:.25;transition:opacity .12s}.ngsi-entity-pin-btn:hover{opacity:.85}.ngsi-entity-pin-btn--active{opacity:1}.ngsi-entity-no-attrs{padding:8px 16px;font-size:12px;color:#94a3b8;font-style:italic}.ngsi-btn--red{background:#dc2626;color:#fff;border-color:#dc2626}.ngsi-btn--red:not(:disabled):hover{background:#b91c1c;border-color:#b91c1c}.ngsi-list-select-all{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.ngsi-list-delete-error{font-size:12px;color:#dc2626}.ngsi-unnested-row{display:flex;align-items:center;gap:8px;padding:8px 4px 4px}.ngsi-unnested-divider{flex:1;border:none;border-top:1px dashed #cbd5e1;margin:0}.ngsi-unnested-label-inline{font-size:11px;color:#94a3b8;flex-shrink:0}.ngsi-attr-row-wrap{border-bottom:1px solid #f8fafc}.ngsi-attr-row-wrap:last-child{border-bottom:none}.ngsi-attr-row--updated{background:#fef3c7}.ngsi-attr-row--outdated{opacity:.55}.ngsi-attr-row--outdated:hover{opacity:.8}.ngsi-attr-outdated-icon{color:#f59e0b;font-size:13px;margin-left:3px;cursor:help;flex-shrink:0}.ngsi-attr-action-btn{opacity:0;transition:opacity .15s;background:none;border:none;cursor:pointer;color:#94a3b8;font-size:14px;line-height:1;padding:0 4px;font-family:inherit}.ngsi-attr-action-btn:hover{color:#3b82f6}.ngsi-attr-action-btn--history:hover{color:#6366f1}.ngsi-attr-row:hover .ngsi-attr-action-btn{opacity:1}.ngsi-attr-save-ok{color:#10b981;font-size:13px}.ngsi-attr-save-err{color:#dc2626;font-size:12px;flex-shrink:0}.ngsi-attr-actions{flex-shrink:0;display:flex;gap:4px;align-items:center;font-size:11px;color:#d1d5db;margin-left:auto}.ngsi-attr-meta{font-size:11px;color:#cbd5e1}.ngsi-attr-ds-badge{background:#f1f5f9;color:#64748b;padding:0 4px;border-radius:3px;font-family:ui-monospace,monospace;font-size:11px}.ngsi-attr-eq{color:#d1d5db;font-size:13px;flex-shrink:0}.ngsi-attr-edit-wrap{flex:1;min-width:0;display:flex;align-items:center;gap:6px;position:relative}.ngsi-attr-edit-input{flex:1;min-width:0;border:1px solid #60a5fa!important;border-radius:4px!important;padding:2px 8px!important;font-size:12px!important;font-family:ui-monospace,monospace!important;background:#fff;color:#1e293b;outline:none;width:auto!important;box-shadow:none}.ngsi-attr-edit-input:focus{box-shadow:0 0 0 2px #bfdbfe!important;outline:none!important}.ngsi-attr-save-btn{background:none;border:none;cursor:pointer;color:#10b981;font-size:16px;line-height:1;padding:0 4px;flex-shrink:0;font-family:inherit}.ngsi-attr-save-btn:hover{color:#059669}.ngsi-attr-save-btn:disabled{color:#d1d5db;cursor:not-allowed}.ngsi-attr-cancel-btn{background:none;border:none;cursor:pointer;color:#9ca3af;font-size:16px;line-height:1;padding:0 4px;flex-shrink:0;font-family:inherit}.ngsi-attr-cancel-btn:hover{color:#6b7280}.ngsi-attr-hint-toggle{background:var(--bg-secondary, #f0f0f0);border:1px solid #60a5fa;border-left:none;border-radius:0 3px 3px 0;cursor:pointer;font-size:.6rem;line-height:1;padding:0 5px;color:#64748b;flex-shrink:0;align-self:stretch;display:flex;align-items:center}.ngsi-attr-hint-toggle:hover{color:#3b82f6;background:#eff6ff}.ngsi-attr-hints-dropdown{max-width:480px;background:var(--bg-primary, #ffffff);border:1px solid #60a5fa;border-radius:4px;box-shadow:0 4px 12px #0003;z-index:9999;max-height:260px;overflow-y:auto}.ngsi-attr-hints-option{padding:5px 10px;cursor:pointer;display:flex;flex-direction:column;gap:1px;border-bottom:1px solid var(--border-subtle, #f1f5f9)}.ngsi-attr-hints-option:last-child{border-bottom:none}.ngsi-attr-hints-option:hover{background:#eff6ff}.ngsi-attr-hints-option--current{background:#e0f2fe}.ngsi-attr-hints-option--current:hover{background:#bae6fd}.ngsi-attr-hints-label{font-weight:500;font-size:12px;color:var(--text-primary, #1e293b)}.ngsi-attr-hints-value{font-size:10px;color:var(--text-secondary, #6b7280);font-family:ui-monospace,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .ngsi-attr-hints-dropdown{background:#1e293b;border-color:#3b82f6}:root:not([data-theme=light]) .ngsi-attr-hints-option{border-bottom-color:#334155}:root:not([data-theme=light]) .ngsi-attr-hints-option:hover{background:#1e3a5f}:root:not([data-theme=light]) .ngsi-attr-hints-option--current{background:#164e63}:root:not([data-theme=light]) .ngsi-attr-hints-option--current:hover{background:#0e7490}:root:not([data-theme=light]) .ngsi-attr-hints-label{color:#e2e8f0}:root:not([data-theme=light]) .ngsi-attr-hints-value{color:#94a3b8}}:root[data-theme=dark] .ngsi-attr-hints-dropdown{background:#1e293b;border-color:#3b82f6}:root[data-theme=dark] .ngsi-attr-hints-option{border-bottom-color:#334155}:root[data-theme=dark] .ngsi-attr-hints-option:hover{background:#1e3a5f}:root[data-theme=dark] .ngsi-attr-hints-option--current{background:#164e63}:root[data-theme=dark] .ngsi-attr-hints-option--current:hover{background:#0e7490}:root[data-theme=dark] .ngsi-attr-hints-label{color:#e2e8f0}:root[data-theme=dark] .ngsi-attr-hints-value{color:#94a3b8}.ngsi-attr-sub-toggle{flex-shrink:0;width:18px;height:18px;padding:2px;display:flex;align-items:center;justify-content:center;color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:50%;cursor:pointer;transition:background .1s,color .1s;font-family:inherit}.ngsi-attr-sub-toggle:hover{background:#e2e8f0;color:#1e293b}.ngsi-attr-sub-toggle svg{width:100%;height:100%;transition:transform .15s}.ngsi-attr-sub-toggle--open svg{transform:rotate(180deg)}.ngsi-attr-sub-wrap{position:relative;margin-left:36px}.ngsi-attr-sub-line{position:absolute;left:0;top:0;bottom:0;width:1px;background:#e5e7eb}.ngsi-attr-sub-item{position:relative;padding-left:20px}.ngsi-attr-sub-item:before{content:"";position:absolute;left:0;top:14px;height:1px;width:20px;background:#e5e7eb}.ngsi-attr-rel-entity{padding:4px 16px 12px}.ngsi-json-null{color:#9ca3af;font-family:ui-monospace,monospace}.ngsi-json-bool{color:#d97706;font-family:ui-monospace,monospace}.ngsi-json-num{color:#2563eb;font-family:ui-monospace,monospace}.ngsi-json-str{color:#059669;font-family:ui-monospace,monospace}.ngsi-json-empty{color:#9ca3af;font-family:ui-monospace,monospace}.ngsi-json-other{font-family:ui-monospace,monospace;color:#374151}.ngsi-json-details{display:inline-block}.ngsi-json-summary{cursor:pointer;color:#6b7280;font-family:ui-monospace,monospace;font-size:12px;-webkit-user-select:none;user-select:none;list-style:none}.ngsi-json-summary::-webkit-details-marker{display:none}.ngsi-json-body{padding-left:12px;border-left:1px solid #e5e7eb;margin-top:2px}.ngsi-json-item{font-size:12px;display:flex;gap:4px}.ngsi-json-idx{color:#9ca3af;font-family:ui-monospace,monospace}.ngsi-json-key{color:#374151;font-family:ui-monospace,monospace;flex-shrink:0}.ngsi-attr-name-text{font-family:ui-monospace,monospace;font-size:13px;color:#374151;flex-shrink:0}.ngsi-attr-name-text--clickable{cursor:pointer}.ngsi-attr-name-text--clickable:hover{color:#64748b}.ngsi-attr-inst-idx{color:#94a3b8;font-size:12px;font-family:ui-monospace,monospace}.ngsi-iri-value{font-family:ui-monospace,monospace;font-size:13px;color:#2563eb;word-break:break-all}.ngsi-rel-already-in-tree{color:#9ca3af;font-family:ui-monospace,monospace;font-size:12px}.ngsi-rel-btn{color:#8b5cf6;font-family:ui-monospace,monospace;font-size:12px;text-align:left;word-break:break-all;background:none;border:none;cursor:pointer;padding:0}.ngsi-rel-btn:hover{color:#7c3aed}.ngsi-rel-loading{color:#9ca3af;margin-left:4px}.ngsi-rel-error{color:#dc2626;font-size:12px;margin-left:8px}.ngsi-geo-value{color:#059669}.ngsi-lang-list{display:flex;flex-wrap:wrap;gap:8px}.ngsi-lang-item{font-size:13px}.ngsi-lang-code{color:#9ca3af;font-family:ui-monospace,monospace;font-size:12px}.ngsi-lang-val{color:#059669}.ngsi-list-value{color:#0e7490}.ngsi-list-sep{color:#9ca3af}.ngsi-hist-title{min-width:0}.ngsi-hist-attr{font-size:13px;font-weight:600;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ngsi-hist-entity-id{font-size:11px;color:#94a3b8;font-family:ui-monospace,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.ngsi-tab-bar{display:flex;gap:4px;background:#f1f5f9;border-radius:8px;padding:4px;margin:12px 20px 0;flex-shrink:0}.ngsi-tab-btn{flex:1;padding:6px 12px;border-radius:5px;font-size:13px;font-weight:500;background:none;border:none;cursor:pointer;color:#64748b;transition:background .1s,color .1s;font-family:inherit}.ngsi-tab-btn:not(:disabled):hover{color:#374151}.ngsi-tab-btn--active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0000001a}.ngsi-tab-btn:disabled{opacity:.35;cursor:not-allowed}.ngsi-modal-content{flex:1;overflow-y:auto;padding:20px;min-height:0;display:flex;flex-direction:column;gap:14px}.ngsi-hist-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.ngsi-hist-mode-bar{display:flex;gap:4px;background:#f1f5f9;border-radius:6px;padding:3px}.ngsi-hist-mode-btn{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:500;background:none;border:none;cursor:pointer;color:#64748b;font-family:inherit;transition:background .1s}.ngsi-hist-mode-btn--active{background:#fff;color:#1e293b;box-shadow:0 1px 2px #00000014}.ngsi-hist-label{display:flex;align-items:center;gap:6px;font-size:12px;color:#374151}.ngsi-hist-input{border:1px solid #d1d5db!important;border-radius:4px!important;padding:4px 8px!important;font-size:12px!important;font-family:inherit!important;background:#fff;color:#1e293b;outline:none;width:auto!important}.ngsi-hist-input:focus{box-shadow:0 0 0 2px #e2e8f0;border-color:#94a3b8!important;outline:none!important}.ngsi-hist-input--num{width:72px!important}.ngsi-hist-empty{text-align:center;padding:30px 16px;color:#94a3b8;font-size:13px}.ngsi-hist-graph{width:100%;height:280px}.ngsi-hist-preset-bar{display:flex;gap:4px}.ngsi-hist-preset-btn{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:500;border:1px solid #d1d5db;background:none;color:#374151;cursor:pointer;font-family:inherit;transition:background .1s,border-color .1s}.ngsi-hist-preset-btn:hover{border-color:#94a3b8}.ngsi-hist-preset-btn--active{background:#1e293b;color:#fff;border-color:#1e293b}.ngsi-copy-menu{position:fixed;z-index:1000;min-width:9rem;max-width:20rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 16px #0000001f,0 1px 4px #00000014;padding:4px 0;outline:none}.ngsi-copy-menu-item{display:block;width:100%;text-align:left;padding:6px 12px;border:none;background:none;cursor:pointer;font-family:inherit;transition:background .1s}.ngsi-copy-menu-item:hover{background:#f8fafc}.ngsi-copy-menu-label{display:block;font-size:13px;color:#1e293b;font-weight:500}.ngsi-copy-menu-value{display:block;font-family:ui-monospace,monospace;font-size:11px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (prefers-color-scheme: dark){.ngsi-copy-menu{background:#1e293b;border-color:#334155;box-shadow:0 4px 16px #0006,0 1px 4px #0003}.ngsi-copy-menu-item:hover{background:#293548}.ngsi-copy-menu-label{color:#e2e8f0}.ngsi-copy-menu-value{color:#64748b}}:root[data-theme=dark] .ngsi-copy-menu{background:#1e293b;border-color:#334155;box-shadow:0 4px 16px #0006,0 1px 4px #0003}:root[data-theme=dark] .ngsi-copy-menu-item:hover{background:#293548}:root[data-theme=dark] .ngsi-copy-menu-label{color:#e2e8f0}:root[data-theme=dark] .ngsi-copy-menu-value{color:#64748b}:root[data-theme=light] .ngsi-copy-menu{background:#fff;border-color:#e2e8f0}:root[data-theme=light] .ngsi-copy-menu-item:hover{background:#f8fafc}:root[data-theme=light] .ngsi-copy-menu-label{color:#1e293b}:root[data-theme=light] .ngsi-copy-menu-value{color:#94a3b8}.ngsi-attr-action-btn--delete:hover{color:#dc2626}.ngsi-attr-delete-confirm{display:inline-flex;align-items:center;gap:2px}.ngsi-attr-delete-ok-btn{background:none;border:none;cursor:pointer;color:#dc2626;font-size:16px;line-height:1;padding:0 4px;flex-shrink:0;font-family:inherit}.ngsi-attr-delete-ok-btn:hover{color:#b91c1c}.ngsi-attr-delete-ok-btn:disabled{color:#d1d5db;cursor:not-allowed}.ngsi-add-attr-row{padding:5px 12px 7px;border-top:1px solid #f1f5f9}.ngsi-add-attr-btn{background:none;border:1px dashed #d1d5db;border-radius:4px;color:#94a3b8;font-size:12px;padding:2px 10px;cursor:pointer;font-family:inherit;width:100%;text-align:left;transition:color .12s,border-color .12s}.ngsi-add-attr-btn:hover{color:#6366f1;border-color:#6366f1}.ngsi-add-attr-form{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ngsi-add-attr-input{flex:1;min-width:100px}.ngsi-add-attr-select{width:auto!important;flex-shrink:0}.ngsi-add-attr-ns-select{min-width:130px;max-width:220px}.ngsi-add-attr-ns-input{flex:1 1 160px;min-width:120px;max-width:260px}.ngsi-add-attr-local-input{flex:0 1 140px;min-width:80px}
