@import "https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@300;400;500;600;700;800&family=Unbounded:wght@400&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;--bg:#fff;--surface:#fff;--surface-muted:#f4f6f5;--surface-strong:#eef2f0;--line:#d9dedb;--line-strong:#c8cfcb;--text:#000;--muted:#3a3a3a;--muted-strong:#242424;--brand:#000;--brand-soft:#f4f6f5;--brand-accent:#0f0;--blue:var(--brand-accent);--green:#0f0;--green-ink:#008a00;--green-tint:#00ff0014;--graphite-tint:#00000009;--amber-tint:#9a6b0014;--red-tint:#dc26260f;--red:#dc2626;--amber:#9a6b00;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 14px 35px #00000014}*{box-sizing:border-box}body{background:linear-gradient(135deg, #00ff000d 0 1px, transparent 1px 32px), radial-gradient(circle at top right, #00ff0014, transparent 26rem), var(--bg);min-width:320px;color:var(--text);margin:0;font-family:Lexend Deca,Overused Grotesk,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{color:inherit}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);color:var(--text);background:#fffffff7;flex-direction:column;display:flex;position:relative;overflow:hidden}.topbar-row{justify-content:space-between;align-items:center;gap:1.5rem;padding:.75rem 1.5rem;display:flex}.topbar:before{background:linear-gradient(90deg, transparent, var(--green), transparent);content:"";height:3px;position:absolute;inset:0 0 auto}.topbar:after{content:"";pointer-events:none;border-left:2px solid #00ff0047;width:12rem;height:9rem;position:absolute;top:-58px;right:22%;transform:rotate(18deg)}.brand-block{align-items:center;gap:.85rem;min-width:0;display:flex}.brand-identity{gap:.22rem;min-width:0;display:grid}.brand-line{align-items:baseline;gap:.85rem;min-width:0;display:flex}.brand-logo{min-height:1.9rem;color:var(--brand);letter-spacing:0;text-transform:uppercase;white-space:nowrap;align-items:center;gap:.03em;padding:.2rem .24rem;font-family:Unbounded,Lexend Deca,sans-serif;font-size:1.52rem;font-weight:400;line-height:1;display:inline-flex}.brand-h{align-items:center;gap:.08em;margin-inline:.015em;display:inline-flex}.brand-dot{background:var(--green);border-radius:999px;width:.3em;height:.3em;box-shadow:0 0 8px #00ff0042}.brand-product{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:600}.topbar p{color:var(--muted);margin:.2rem 0 0;font-size:.9rem}.main-nav{border-top:1px solid var(--line);background:var(--surface-muted);scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;scroll-behavior:smooth;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:.2rem;padding:.5rem 1rem;scroll-padding-inline:1rem;display:flex;overflow-x:auto}.main-nav>:first-child{margin-inline-start:auto}.main-nav>:last-child{margin-inline-end:auto}.main-nav::-webkit-scrollbar{height:4px}.main-nav::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}.main-nav button{color:var(--muted);cursor:pointer;letter-spacing:.01em;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;flex-shrink:0;align-items:center;gap:.3rem;padding:.32rem .8rem;font-size:.73rem;font-weight:600;transition:background .13s,color .13s,border-color .13s,box-shadow .13s;display:inline-flex}.main-nav button:hover:not(.active){background:var(--graphite-tint);border-color:var(--line);color:var(--text)}.main-nav button.active,.main-nav button[aria-current=page]{background:var(--surface);color:var(--text);border-color:var(--line-strong);box-shadow:inset 0 -2px 0 0 var(--brand-accent), 0 1px 2px #0000000f;font-weight:700}.main-nav button:focus-visible{outline:2px solid var(--green-ink);outline-offset:2px}.nav-icon{opacity:.7;font-size:.65rem;line-height:1}.main-nav button.active .nav-icon{opacity:1}.topbar-summary-group{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.topbar-summary{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex:0 auto;min-width:86px;padding:.65rem .8rem}.topbar-summary span{font-size:1.35rem;font-weight:800;line-height:1;display:block}.topbar-summary small{color:var(--muted);text-transform:uppercase;margin-top:.35rem;font-size:.74rem;font-weight:700;display:block}.topbar-summary.online span,.status-online{color:var(--green-ink)}.topbar-summary.offline span,.status-offline{color:var(--red)}.topbar-summary.health span{color:var(--green-ink)}.container{flex:1;min-height:0;display:flex}.container.reports-layout .content{max-width:1480px;margin:0 auto}.sidebar{border-right:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffc7;flex:0 0 360px;width:360px;padding:1rem;overflow-y:auto}.sidebar-heading{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.9rem;display:flex}.sidebar-heading span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:800}.sidebar-heading strong{color:var(--text);font-size:1.35rem}.content{flex:1;min-width:0;padding:1.25rem;overflow-y:auto}.loading,.empty-state{min-height:100vh;color:var(--muted);place-items:center;padding:2rem;display:grid}.empty-state{border:1px dashed var(--line-strong);text-align:center;background:#ffffffb8;border-radius:8px;align-content:center;justify-items:center;min-height:420px}.empty-state h2{color:var(--text);margin:0 0 .5rem}.empty-state p,.muted{color:var(--muted);margin:0}.banner-error,.inline-error{color:#be123c;background:#fff1f2;border-bottom:1px solid #fecdd3;padding:.85rem 1.5rem}.inline-error{border:1px solid #fecdd3;border-radius:8px;margin-bottom:1rem}.inline-loading{color:var(--muted);margin-bottom:1rem}.agent-list-title{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.agent-list h2{color:var(--text);margin:0;font-size:1.1rem}.agent-list-title p{color:var(--muted);margin:.2rem 0 0;font-size:.78rem}.agent-mini-stats{gap:.35rem;display:flex}.agent-mini-stats span{background:var(--surface);min-width:30px;box-shadow:var(--shadow-sm);text-align:center;border-radius:999px;padding:.18rem .45rem;font-size:.78rem;font-weight:800}.agent-mini-stats .online{color:var(--green)}.agent-mini-stats .offline{color:var(--red)}.agent-filters{gap:.65rem;margin-bottom:1rem;display:grid}.agent-filters input,.agent-filters select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:40px;color:var(--text);border-radius:8px;padding:.5rem .65rem}.agent-filters input:focus,.agent-filters select:focus,.segmented-control button:focus,.agent-tabs button:focus{outline:2px solid var(--green);outline-offset:1px}.segmented-control,.agent-tabs{border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;display:grid;overflow:hidden}.segmented-control{grid-template-columns:repeat(3,minmax(0,1fr))}.agent-tabs{width:fit-content;box-shadow:var(--shadow-sm);grid-template-columns:repeat(4,minmax(140px,1fr));margin-bottom:1.25rem}.segmented-control button,.agent-tabs button{border:0;border-right:1px solid var(--line);min-height:38px;color:var(--muted-strong);cursor:pointer;background:0 0;font-weight:750}.segmented-control button:last-child,.agent-tabs button:last-child{border-right:0}.segmented-control button.active,.agent-tabs button.active{background:var(--brand);color:var(--green)}.agents{flex-direction:column;gap:.5rem;display:flex}.agent-item{border:1px solid var(--line);background:linear-gradient(135deg, #fffffff5, #f8fafceb), var(--surface);width:100%;min-height:86px;box-shadow:var(--shadow-sm);color:inherit;cursor:pointer;text-align:left;border-radius:8px;align-items:flex-start;gap:.65rem;padding:.65rem .75rem;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;display:flex;position:relative;overflow:hidden}.agent-item:before{content:"";background:0 0;width:3px;transition:background-color .18s;position:absolute;inset:0 auto 0 0}.agent-item:hover{border-color:var(--line-strong);transform:translateY(-2px);box-shadow:0 10px 24px #00000014}.agent-item.selected{border-color:var(--green);background:linear-gradient(135deg, #00ff0014, #fffffff5), var(--surface);box-shadow:0 12px 30px #00000014}.agent-item.online:before{background:var(--green)}.agent-item.offline:before{background:var(--red)}.agent-avatar{color:#1e293b;background:linear-gradient(135deg,#e8eef7,#f8fafc);border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:.72rem;font-weight:900;display:grid;box-shadow:inset 0 1px #ffffffe6}.agent-info{flex:1;gap:.12rem;min-width:0;display:grid}.agent-line{justify-content:space-between;align-items:center;gap:.5rem;min-width:0;display:flex}.status-dot{background:var(--red);border-radius:999px;flex:0 0 .55rem;width:.55rem;height:.55rem;box-shadow:0 0 0 3px #dc26261f}.agent-item.online .status-dot{background:var(--green);box-shadow:0 0 0 3px #00ff002e}.agent-name,.agent-company,.agent-hardware,.agent-serial,.agent-last-seen{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.agent-name{color:var(--text);letter-spacing:.01em;font-size:.92rem;font-weight:850}.agent-company{color:var(--muted-strong);font-size:.74rem}.agent-hardware,.agent-serial,.agent-last-seen{color:var(--muted);font-size:.72rem;line-height:1.25}.agent-serial{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.agent-last-seen{background:var(--surface-strong);width:fit-content;color:var(--muted-strong);border-radius:999px;margin-top:.22rem;padding:.12rem .42rem;font-size:.68rem;font-weight:800}.agent-item.online .agent-last-seen{color:var(--green-ink);background:#00ff0021}.agent-item.offline .agent-last-seen{color:#b91c1c;background:#fee2e2}.agent-metrics{gap:1rem;display:grid}.metrics-header{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.15rem;display:flex}.metrics-header h2{color:var(--text);margin:0;font-size:1.55rem}.metrics-header p{overflow-wrap:anywhere;color:var(--muted);margin:.25rem 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.78rem}.status-pill{border-radius:999px;padding:.35rem .65rem;font-size:.78rem;font-weight:850}.status-pill.online{color:#15803d;background:#dcfce7}.status-pill.offline{color:#b91c1c;background:#fee2e2}.metric-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem;display:grid}.metric-card,.chart-container,.details-panel,.performance-summary-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:8px}.metric-card{min-width:0;padding:.95rem}.metric-card:hover,.details-panel:hover,.chart-container:hover{border-color:#ccd7e6}.metric-label{color:var(--muted);text-transform:uppercase;margin-bottom:.45rem;font-size:.75rem;font-weight:800}.metric-value{overflow-wrap:anywhere;color:var(--text);font-size:1.05rem;font-weight:850}.metric-value.compact{font-size:.88rem;line-height:1.35}.metric-subvalue{color:var(--muted);margin-top:.35rem;font-size:.76rem;line-height:1.35}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.details-panel{min-width:0;padding:1rem}.details-panel h3,.chart-container h3{color:var(--text);margin:0 0 .9rem;font-size:1rem;font-weight:850}.panel-heading,.chart-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.9rem;display:flex}.panel-heading h3,.chart-heading h3{margin:0}.panel-heading span,.chart-heading span{background:var(--surface-strong);color:var(--muted-strong);border-radius:999px;flex:none;padding:.25rem .55rem;font-size:.76rem;font-weight:850}.chart-heading p{color:var(--muted);margin:.25rem 0 0;font-size:.84rem}.location-source{border-radius:999px;padding:.25rem .55rem;font-weight:850}.location-source.precise{color:#15803d;background:#dcfce7}.location-source.fallback{color:#92400e;background:#fef3c7}.location-panel a{color:var(--blue);font-weight:800;text-decoration:none}.location-panel a:hover{text-decoration:underline}.inventory-alert-list{gap:.65rem;display:grid}.inventory-alert{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;min-width:0;padding:.8rem;display:flex}.inventory-alert.warning{background:#fffbeb;border-color:#fde68a}.inventory-alert.info{background:#eff6ff;border-color:#bfdbfe}.inventory-alert strong,.inventory-alert span{overflow-wrap:anywhere;display:block}.inventory-alert-content{gap:.35rem;min-width:0;display:grid}.inventory-alert strong{color:var(--text);font-size:.92rem}.inventory-alert span{color:var(--muted-strong);margin-top:.2rem;font-size:.82rem;line-height:1.35}.inventory-alert-meta{text-align:right;flex:none;min-width:128px}.inventory-alert-meta span{background:var(--surface);width:fit-content;margin-left:auto;font-size:.72rem;font-weight:850}.inventory-alert-meta time{color:var(--muted);margin-top:.35rem;font-size:.76rem;display:block}.inventory-software-details{gap:.35rem;margin-top:.25rem;display:grid}.inventory-software-row{border:1px solid var(--line);background:#ffffffb8;border-radius:8px;grid-template-columns:82px minmax(0,1fr);align-items:flex-start;gap:.55rem;padding:.48rem .55rem;display:grid}.inventory-software-row.installed{background:#f0fdf4;border-color:#bbf7d0}.inventory-software-row.removed{background:#fff1f2;border-color:#fecdd3}.inventory-software-row.updated{background:#eff6ff;border-color:#bfdbfe}.inventory-software-kind{background:var(--surface);width:fit-content;color:var(--muted-strong);border-radius:999px;padding:.16rem .42rem;font-size:.68rem;font-weight:850}.inventory-software-row.installed .inventory-software-kind{color:#15803d}.inventory-software-row.removed .inventory-software-kind{color:#b91c1c}.inventory-software-row.updated .inventory-software-kind{color:#1d4ed8}.inventory-software-row strong{font-size:.82rem}.inventory-software-row small{overflow-wrap:anywhere;color:var(--muted-strong);margin-top:.12rem;font-size:.74rem;line-height:1.25;display:block}.details-panel dl{gap:.75rem;margin:0;display:grid}.details-panel dl div{min-width:0}.details-panel dt{color:var(--muted);font-size:.76rem;font-weight:750}.details-panel dd{overflow-wrap:anywhere;color:var(--text);margin:.15rem 0 0;font-size:.92rem;font-weight:700}.security-panel{grid-column:span 2}.security-hero{background:linear-gradient(#f8fbff 0%,#f1f7ff 100%);border:1px solid #dbeafe;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;padding:.9rem;display:flex}.security-hero div{gap:.3rem;min-width:0;display:grid}.security-hero strong{overflow-wrap:anywhere;color:var(--text);font-size:1rem}.security-hero small,.security-summary-card small{color:var(--muted);font-size:.75rem;line-height:1.35}.security-state{border-radius:999px;width:fit-content;padding:.25rem .55rem;font-size:.76rem;font-weight:850}.security-state.ok,.security-summary-card.ok{background:#f0fdf4;border-color:#bbf7d0}.security-state.ok{color:#15803d}.security-state.neutral,.security-summary-card.neutral{background:var(--surface-muted);border-color:var(--line)}.security-state.neutral{color:var(--muted-strong)}.security-state.danger,.security-summary-card.danger{background:#fff1f2;border-color:#fecdd3}.security-state.danger{color:#be123c}.security-summary-card.warning{background:#fffbeb;border-color:#fde68a}.security-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.security-summary-card{border:1px solid var(--line);border-radius:8px;gap:.25rem;min-width:0;padding:.75rem;display:grid}.security-summary-card span{color:var(--muted);font-size:.76rem;font-weight:800}.security-summary-card strong{overflow-wrap:anywhere;color:var(--text);font-size:.92rem}.security-detail-list{grid-template-columns:repeat(2,minmax(0,1fr))}.security-detail-list .wide{grid-column:span 2}.security-detail-list .wide dd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.8rem;line-height:1.35}.disk-list{gap:.85rem;display:grid}.disk-row{gap:.45rem;display:grid}.disk-row strong{color:var(--text);font-size:.92rem;display:block}.disk-row span{color:var(--muted);font-size:.82rem}.usage-bar{background:var(--surface-strong);border-radius:999px;height:9px;overflow:hidden}.usage-bar span{background:linear-gradient(90deg, var(--blue), #14b8a6);height:100%;display:block}.software-panel{margin-bottom:0}.software-table-wrap{overflow-x:auto}.software-table{border-collapse:collapse;width:100%;font-size:.86rem}.software-table th,.software-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.72rem .55rem}.software-table th{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:850}.software-table td{color:var(--text)}.table-note{margin-top:.75rem}.charts,.performance-tab,.performance-chart-grid,.performance-summary-grid{gap:1rem;display:grid}.charts,.performance-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-container{min-width:0;padding:1rem}.performance-hero{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.15rem;display:flex}.performance-hero span,.performance-last-sample span{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:.76rem;font-weight:850}.performance-hero h3{color:var(--text);margin:.25rem 0;font-size:1.35rem}.performance-hero p{color:var(--muted);margin:0}.performance-last-sample{justify-items:end;gap:.25rem;min-width:220px;display:grid}.performance-last-sample strong{color:var(--text);font-size:.95rem}.performance-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.performance-summary-card{gap:.35rem;min-width:0;padding:1rem;display:grid}.performance-summary-card.cpu{border-top:3px solid var(--blue)}.performance-summary-card.memory{border-top:3px solid var(--green)}.performance-summary-card span{color:var(--muted);font-size:.78rem;font-weight:850}.performance-summary-card strong{color:var(--text);font-size:1.55rem}.performance-summary-card small{overflow-wrap:anywhere;color:var(--muted);font-size:.78rem;line-height:1.35}.performance-chart-wide{padding:1.15rem}.timeline-tab{gap:1rem;display:grid}.timeline-hero{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.15rem;display:flex}.timeline-hero span{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:.76rem;font-weight:850}.timeline-hero h3{color:var(--text);margin:.25rem 0;font-size:1.35rem}.timeline-hero p{color:var(--muted);margin:0}.timeline-summary{grid-template-columns:repeat(3,minmax(82px,1fr));gap:.65rem;display:grid}.timeline-summary div{border:1px solid var(--line);background:var(--surface-muted);text-align:center;border-radius:8px;gap:.2rem;min-width:0;padding:.65rem;display:grid}.timeline-summary strong{color:var(--text);font-size:1.15rem}.timeline-summary span{color:var(--muted);font-size:.68rem}.timeline-list{gap:.75rem;display:grid;position:relative}.timeline-list:before{background:var(--line);content:"";width:2px;position:absolute;inset:0 auto 0 8px}.timeline-event{grid-template-columns:18px minmax(0,1fr);gap:.8rem;display:grid;position:relative}.timeline-marker{z-index:1;border:3px solid var(--surface);background:var(--blue);border-radius:999px;width:18px;height:18px;margin-top:.75rem;position:relative;box-shadow:0 0 0 2px #2563eb29}.timeline-event.ok .timeline-marker{background:var(--green);box-shadow:0 0 0 2px #16a34a29}.timeline-event.warning .timeline-marker{background:var(--amber);box-shadow:0 0 0 2px #d9770629}.timeline-event.critical .timeline-marker{background:var(--red);box-shadow:0 0 0 2px #dc262629}.timeline-card{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);border-radius:8px;padding:.85rem}.timeline-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.timeline-card-header div{gap:.18rem;min-width:0;display:grid}.timeline-card-header strong{overflow-wrap:anywhere;color:var(--text);font-size:.95rem}.timeline-card-header span{color:var(--muted);font-size:.75rem;font-weight:800}.timeline-card-header time{color:var(--muted);flex:none;font-size:.76rem}.timeline-card p{color:var(--muted-strong);margin:.55rem 0 0;font-size:.84rem;line-height:1.45}.reports-page{gap:1rem;display:grid}.reports-hero{border:1px solid var(--line);background:linear-gradient(135deg, #0f172af5, #1e293bf0), var(--brand);box-shadow:var(--shadow-sm);color:#fff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.reports-hero span{color:#93c5fd;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:900}.reports-hero h2{margin:.25rem 0;font-size:1.5rem}.reports-hero p{color:#cbd5e1;margin:0}.reports-refresh-state{color:#dbeafe;background:#ffffff1a;border-radius:999px;flex:none;padding:.35rem .65rem;font-size:.78rem;font-weight:850}.reports-summary-grid,.report-picker,.reports-grid,.report-kpi-grid{gap:1rem;display:grid}.reports-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.reports-summary-card,.report-picker button,.report-kpi-grid div{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:8px}.reports-summary-card{border-top:3px solid var(--line-strong);gap:.35rem;padding:1rem;display:grid}.reports-summary-card.ok{border-top-color:var(--green)}.reports-summary-card.warning{border-top-color:var(--amber)}.reports-summary-card.danger{border-top-color:var(--red)}.reports-summary-card span,.report-kpi-grid span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:850}.reports-summary-card strong,.report-kpi-grid strong{color:var(--text);font-size:1.45rem}.catalog-filter-card{cursor:pointer;width:100%;font:inherit;text-align:left;gap:.3rem;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid}.catalog-filter-card small{color:var(--muted);font-size:.74rem;font-weight:750}.catalog-filter-card:hover,.catalog-filter-card.active{border-color:var(--green);transform:translateY(-1px);box-shadow:0 12px 26px #00000014}.catalog-filter-card.active{outline-offset:1px;outline:2px solid #00ff003d}.report-picker{grid-template-columns:repeat(5,minmax(0,1fr))}.report-picker button{min-height:96px;color:var(--text);cursor:pointer;text-align:left;gap:.3rem;padding:.9rem;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid}.report-picker button:hover{box-shadow:var(--shadow-md);border-color:#9db2cc;transform:translateY(-2px)}.report-picker button.active{background:linear-gradient(135deg,#eff6ff,#fff);border-color:#60a5fa}.report-picker strong{font-size:.94rem}.report-picker span{color:var(--muted);font-size:.78rem;line-height:1.35}.reports-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-grid .details-panel:first-child{grid-column:span 2}.report-list{gap:.55rem;display:grid}.report-list-row{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;width:100%;min-width:0;padding:.65rem .75rem;display:flex}.report-list-row.clickable{cursor:pointer;text-align:left;font-family:inherit}.report-list-row.clickable:hover,.report-list-row.clickable.active{border-color:var(--green-ink);background:linear-gradient(135deg,#00ff0014,#fff);box-shadow:0 10px 22px #0000000d}.report-list-row.clickable.active{outline:2px solid #00ff002e}.report-list-row span{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:750;overflow:hidden}.report-list-row strong{color:var(--muted-strong);flex:none;font-size:.84rem}.report-filter-results{grid-column:span 2}.report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-kpi-grid div{gap:.4rem;padding:1rem;display:grid}.report-table-wrap{overflow-x:auto}.alerts-page{gap:1rem;display:grid}.alerts-hero{border:1px solid var(--line);background:linear-gradient(135deg, #7f1d1df0, #0f172af5), var(--brand);box-shadow:var(--shadow-sm);color:#fff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.alerts-hero span{color:#fecdd3;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:900}.alerts-hero h2{margin:.25rem 0;font-size:1.5rem}.alerts-hero p{color:#fee2e2;margin:0}.alerts-filter-panel{padding:.85rem}.alerts-filters{grid-template-columns:minmax(240px,1fr) 210px 210px;gap:.75rem;display:grid}.alerts-filters input,.alerts-filters select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:40px;color:var(--text);border-radius:8px;padding:.5rem .65rem}.alerts-list{gap:.65rem;display:grid}.alert-row{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-left-width:4px;border-radius:8px;grid-template-columns:96px minmax(0,1fr) 86px;align-items:flex-start;gap:.85rem;padding:.85rem;display:grid}.alert-row.critical{border-left-color:var(--red);background:#fff7f8}.alert-row.warning{border-left-color:var(--amber);background:#fffaf0}.alert-row.info{border-left-color:var(--blue);background:#f8fbff}.alert-severity,.alert-status,.alert-title-line span{border-radius:999px;width:fit-content;padding:.18rem .5rem;font-size:.72rem;font-weight:850}.alert-severity{background:var(--surface);color:var(--muted-strong)}.alert-row.critical .alert-severity{color:#b91c1c;background:#fee2e2}.alert-row.warning .alert-severity{color:#92400e;background:#fef3c7}.alert-row.info .alert-severity{color:#1d4ed8;background:#dbeafe}.alert-main{gap:.35rem;min-width:0;display:grid}.alert-title-line{justify-content:space-between;align-items:center;gap:1rem;display:flex}.alert-title-line strong{overflow-wrap:anywhere;color:var(--text);font-size:.95rem}.alert-title-line span{background:var(--surface-strong);color:var(--muted-strong);flex:none}.alert-main p{color:var(--muted-strong);margin:0;font-size:.84rem;line-height:1.45}.alert-meta{flex-wrap:wrap;gap:.4rem;display:flex}.alert-meta span,.alert-meta time{color:var(--muted);background:#ffffffc7;border-radius:999px;padding:.14rem .42rem;font-size:.72rem;font-weight:750}.alert-status{color:#1d4ed8;background:#eff6ff;margin-left:auto}.software-catalog-page,.commands-page{gap:1rem;display:grid}.commands-hero{border:1px solid var(--line);background:linear-gradient(135deg, #312e81f0, #0f172af5), var(--brand);box-shadow:var(--shadow-sm);color:#fff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.commands-hero span{color:#c4b5fd;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:900}.commands-hero h2{margin:.25rem 0;font-size:1.5rem}.commands-hero p{color:#ddd6fe;margin:0}.commands-hero-state{background:#ffffff17;border-radius:8px;justify-items:end;gap:.25rem;min-width:140px;padding:.75rem;display:grid}.commands-hero-state strong{font-size:1.55rem}.commands-hero-state span{color:#ddd6fe;font-size:.72rem}.commands-layout{grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:1rem;display:grid}.command-target-panel{align-content:start;gap:.85rem;display:grid}.command-target-panel select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:40px;color:var(--text);border-radius:8px;padding:.5rem .65rem}.command-target-card{border:1px solid var(--line);background:var(--surface-muted);border-radius:8px;grid-template-columns:12px minmax(0,1fr);align-items:start;gap:.75rem;padding:.8rem;display:grid}.command-status-dot{background:var(--red);border-radius:999px;width:.7rem;height:.7rem;margin-top:.25rem;box-shadow:0 0 0 4px #dc26261f}.command-status-dot.online{background:var(--green);box-shadow:0 0 0 4px #16a34a1f}.command-target-card div:last-child{gap:.2rem;min-width:0;display:grid}.command-target-card strong,.command-target-card span,.command-target-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-target-card strong{color:var(--text);font-size:1rem}.command-target-card span,.command-target-card small{color:var(--muted);font-size:.78rem}.commands-action-grid,.commands-summary-grid{gap:1rem;display:grid}.commands-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.commands-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.command-action{border:1px solid var(--line);background:var(--surface);min-height:132px;box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;border-top-width:4px;border-radius:8px;align-content:start;gap:.45rem;padding:1rem;transition:border-color .18s,box-shadow .18s,transform .18s;display:grid}.command-action:hover:not(:disabled){box-shadow:var(--shadow-md);border-color:#9db2cc;transform:translateY(-2px)}.command-action:disabled{cursor:not-allowed;opacity:.68}.command-action.blue{border-top-color:var(--blue)}.command-action.green{border-top-color:var(--green)}.command-action.amber{border-top-color:var(--amber)}.command-action.red{border-top-color:var(--red)}.command-action span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:850}.command-action strong{color:var(--text);font-size:1.05rem}.command-action small{color:var(--muted-strong);font-size:.82rem;line-height:1.4}.commands-table-wrap{overflow-x:auto}.commands-table td strong,.commands-table td small{display:block}.commands-table td small{color:var(--muted);margin-top:.2rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.72rem}.command-status{background:var(--surface-strong);width:fit-content;color:var(--muted-strong);border-radius:999px;padding:.18rem .5rem;font-size:.72rem;font-weight:850}.command-status.pending{color:#92400e;background:#fef3c7}.command-status.running{color:#1d4ed8;background:#dbeafe}.command-status.succeeded{color:#15803d;background:#dcfce7}.command-status.failed,.command-status.expired{color:#b91c1c;background:#fee2e2}.compliance-page{gap:1rem;display:grid}.compliance-hero{border:1px solid var(--line);background:linear-gradient(135deg, #082f49f0, #0f172af5), var(--brand);box-shadow:var(--shadow-sm);color:#fff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.compliance-hero span{color:#bae6fd;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:900}.compliance-hero h2{margin:.25rem 0;font-size:1.5rem}.compliance-hero p{color:#e0f2fe;margin:0}.compliance-message{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-bottom:0;padding:.75rem .9rem}.compliance-filter-panel{padding:.85rem}.compliance-filters{grid-template-columns:minmax(260px,1fr) 190px 210px;gap:.75rem;display:grid}.compliance-filters input,.compliance-filters select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:40px;color:var(--text);border-radius:8px;padding:.5rem .65rem}.compliance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.compliance-card{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);border-top-width:4px;border-radius:8px;overflow:hidden}.compliance-card.compliant{border-top-color:var(--green)}.compliance-card.warning{border-top-color:var(--amber)}.compliance-card.critical{border-top-color:var(--red)}.compliance-card-header{border-bottom:1px solid var(--line);background:var(--surface-muted);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem;display:flex}.compliance-card-header div:first-child{gap:.18rem;min-width:0;display:grid}.compliance-card-header span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:850}.compliance-card-header h3{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.08rem;overflow:hidden}.compliance-card-header p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.78rem;overflow:hidden}.compliance-score{flex:none;justify-items:end;gap:.2rem;display:grid}.compliance-score strong{color:var(--text);font-size:1.55rem;line-height:1}.compliance-score span{background:var(--surface);color:var(--muted-strong);border-radius:999px;padding:.18rem .5rem;font-size:.7rem}.compliance-ok-state{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin:1rem;padding:.85rem;font-size:.88rem;font-weight:800}.compliance-finding-list{gap:.65rem;padding:1rem;display:grid}.compliance-finding{border:1px solid var(--line);background:var(--surface-muted);border-left-width:4px;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:.85rem;padding:.78rem;display:grid}.compliance-finding.critical{border-left-color:var(--red);background:#fff7f8}.compliance-finding.warning{border-left-color:var(--amber);background:#fffaf0}.compliance-finding.info{border-left-color:var(--blue);background:#f8fbff}.compliance-finding div{gap:.22rem;min-width:0;display:grid}.compliance-finding span{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:850}.compliance-finding strong{overflow-wrap:anywhere;color:var(--text);font-size:.9rem}.compliance-finding p,.compliance-finding small{color:var(--muted-strong);margin:0;font-size:.78rem;line-height:1.35}.compliance-finding small{color:var(--muted)}.compliance-finding button{border:1px solid var(--line-strong);background:var(--brand);color:#fff;cursor:pointer;border-radius:8px;min-height:34px;padding:.35rem .65rem;font-size:.78rem;font-weight:850}.compliance-finding button:disabled{cursor:not-allowed;opacity:.65}.catalog-hero{border:1px solid var(--line);background:linear-gradient(135deg, #1e40aff0, #0f172af5), var(--brand);box-shadow:var(--shadow-sm);color:#fff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.catalog-hero span{color:#bfdbfe;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:900}.catalog-hero h2{margin:.25rem 0;font-size:1.5rem}.catalog-hero p{color:#dbeafe;margin:0}.catalog-layout{grid-template-columns:minmax(320px,.85fr) minmax(0,1.35fr);gap:1rem;display:grid}.catalog-form{gap:.75rem;display:grid}.catalog-form label{color:var(--muted);text-transform:uppercase;gap:.32rem;font-size:.76rem;font-weight:850;display:grid}.catalog-form input,.catalog-form select,.catalog-form textarea{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:40px;color:var(--text);text-transform:none;border-radius:8px;padding:.5rem .65rem}.catalog-form textarea{resize:vertical}.catalog-check{align-items:center;text-transform:none!important;gap:.5rem!important;display:flex!important}.catalog-check input{width:auto;min-height:0}.catalog-actions{flex-wrap:wrap;gap:.55rem;display:flex}.catalog-actions button,.catalog-rule-actions button{border:1px solid var(--line-strong);background:var(--brand);color:#fff;cursor:pointer;border-radius:8px;min-height:36px;padding:.4rem .75rem;font-weight:850}.catalog-actions button[type=button],.catalog-rule-actions button{background:var(--surface);color:var(--muted-strong)}.catalog-rule-list{gap:.65rem;display:grid}.catalog-rule{border:1px solid var(--line);background:var(--surface-muted);border-left-width:4px;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.8rem;display:flex}.catalog-rule.prohibited{border-left-color:var(--red)}.catalog-rule.inactive{opacity:.62}.catalog-rule div{gap:.18rem;min-width:0;display:grid}.catalog-rule strong{overflow-wrap:anywhere;color:var(--text);font-size:.94rem}.catalog-rule span,.catalog-rule small{color:var(--muted);font-size:.76rem;line-height:1.35}.catalog-rule-actions{flex:none;align-items:end}.catalog-rule-actions span{background:var(--surface);width:fit-content;color:var(--muted-strong);border-radius:999px;margin-left:auto;padding:.16rem .45rem;font-weight:850}.catalog-install-grid{grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:.85rem;margin-bottom:1rem;display:grid}.catalog-install-grid label{color:var(--muted);text-transform:uppercase;gap:.32rem;font-size:.76rem;font-weight:850;display:grid}.catalog-install-grid select{border:1px solid var(--line-strong);background:var(--surface);min-height:40px;color:var(--text);border-radius:8px;padding:.5rem .65rem}.catalog-install-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.catalog-install-actions button{border:1px solid var(--brand);background:var(--brand);min-height:40px;color:var(--green);cursor:pointer;border-radius:8px;padding:.5rem .8rem;font-weight:850}.catalog-install-actions button:disabled{cursor:not-allowed;opacity:.62}.catalog-install-actions span{color:var(--green-ink);font-size:.82rem;font-weight:800}.catalog-agent-pick-list{max-height:340px}.catalog-host-results{scroll-margin-top:1.25rem}.locations-page{gap:1rem;display:grid}.locations-hero{border:1px solid var(--line);background:linear-gradient(135deg, #14532df0, #0f172af5), var(--brand);box-shadow:var(--shadow-sm);color:#fff;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.locations-hero span{color:#bbf7d0;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:900}.locations-hero h2{margin:.25rem 0;font-size:1.5rem}.locations-hero p{color:#d1fae5;margin:0}.locations-layout,.locations-grid{gap:1rem;display:grid}.locations-layout{grid-template-columns:minmax(0,1.7fr) minmax(320px,.8fr)}.locations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-map-panel{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-sm);border-radius:8px;padding:1rem}.location-map{background:#e2e8f0;border:1px solid #cbd5e1;border-radius:8px;min-height:470px;position:relative;overflow:hidden}.leaflet-map{z-index:1;position:absolute;inset:0}.map-legend{z-index:500;box-shadow:var(--shadow-sm);color:var(--muted);background:#fffffff0;border:1px solid #94a3b873;border-radius:8px;align-items:center;gap:.8rem;padding:.55rem .7rem;font-size:.78rem;font-weight:700;display:flex;position:absolute;bottom:.8rem;right:.8rem}.map-legend span{align-items:center;gap:.35rem;display:inline-flex}.map-legend i{border-radius:999px;width:.7rem;height:.7rem;display:inline-block}.map-legend i.precise{background:var(--green)}.map-legend i.fallback{background:var(--amber)}.map-empty{z-index:2;color:var(--muted);text-align:center;place-items:center;padding:2rem;display:grid;position:absolute;inset:0}.location-selected-panel a{color:var(--blue);font-weight:850;text-decoration:none}.location-host-list{gap:.55rem;display:grid}.location-host-row{border:1px solid var(--line);background:var(--surface-muted);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;min-width:0;padding:.7rem .8rem;display:flex}.location-host-row.selected{background:#eff6ff;border-color:#60a5fa}.location-host-row div{gap:.18rem;min-width:0;display:grid}.location-host-row strong,.location-host-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.location-host-row strong{color:var(--text);font-size:.88rem}.location-host-row span,.location-host-row small{color:var(--muted);font-size:.76rem}.updates-page{gap:1rem;display:grid}.updates-hero{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.updates-hero span{color:var(--blue);letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:800}.updates-hero h2{margin:.2rem 0}.updates-hero p{color:var(--muted);margin:0}.updates-mode-badge{min-width:9rem;color:var(--muted);justify-items:end;gap:.2rem;display:grid}.updates-mode-badge strong{color:var(--text)}.updates-mode-badge.all strong{color:var(--green)}.updates-mode-badge.selected strong{color:var(--blue)}.updates-mode-badge.disabled strong{color:var(--muted)}.updates-layout{grid-template-columns:minmax(20rem,.8fr) minmax(0,1.2fr);gap:1rem;display:grid}.updates-form-panel{align-content:start;gap:.85rem;display:grid}.updates-form-panel label{color:var(--muted);gap:.35rem;font-size:.84rem;font-weight:800;display:grid}.updates-form-panel input,.updates-form-panel textarea{border:1px solid var(--line);width:100%;color:var(--text);font:inherit;border-radius:8px;padding:.7rem .75rem}.updates-form-panel textarea{resize:vertical}.checkbox-line{grid-template-columns:none;align-items:center;color:var(--text)!important;gap:.55rem!important;display:flex!important}.checkbox-line input{width:auto}.update-mode-group{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;display:grid}.update-mode-group button,.primary-action,.update-agent-actions button{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#fff;border-radius:8px;padding:.65rem .75rem;font-weight:800}.update-mode-group button.active,.primary-action{background:var(--blue);color:#fff;border-color:#2563eb73}.primary-action:disabled,.update-agent-actions button:disabled{cursor:not-allowed;opacity:.65}.update-agent-list{gap:.55rem;max-height:620px;display:grid;overflow:auto}.update-agent-row{border:1px solid var(--line);background:#fff;border-radius:8px;flex-direction:column;gap:.7rem;padding:.8rem;display:flex}.update-agent-row-header{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.update-agent-row label{align-items:center;gap:.65rem;min-width:0;display:flex}.update-agent-row strong,.update-agent-row small{display:block}.update-agent-row small{color:var(--muted)}.update-timeline{align-items:flex-start;padding:0 .25rem .2rem;display:flex}.timeline-step{flex-direction:column;flex-shrink:0;align-items:center;gap:.3rem;min-width:68px;display:flex}.timeline-dot{border:2px solid var(--line-strong);background:var(--surface-muted);border-radius:50%;width:13px;height:13px;transition:background .2s,border-color .2s,box-shadow .2s}.timeline-label{color:var(--muted);text-align:center;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em;font-size:.6rem;font-weight:600;transition:color .2s}.timeline-connector{background:var(--line);flex:1;min-width:10px;height:2px;margin-top:5px;transition:background .3s}.timeline-connector.conn-done{background:var(--green)}.ts-done .timeline-dot{background:var(--green);border-color:var(--green)}.ts-done .timeline-label{color:var(--green-ink)}.ts-active .timeline-dot{background:var(--green);border-color:var(--green);animation:1.4s ease-in-out infinite timeline-dot-pulse}.ts-active .timeline-label{color:var(--green-ink);font-weight:700}.ts-error .timeline-dot{background:var(--red);border-color:var(--red)}.ts-error .timeline-label{color:var(--red)}@keyframes timeline-dot-pulse{0%,to{box-shadow:0 0 0 3px var(--green-tint)}50%{box-shadow:0 0 0 8px var(--green-tint)}}.panel-refresh-btn{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:6px;padding:.2rem .5rem;font-size:.9rem;transition:color .15s,border-color .15s}.panel-refresh-btn:hover{color:#fff;border-color:#fff6}body h1,body h2,body h3,.metric-value,.topbar-summary span,.reports-summary-card strong,.report-kpi-grid strong,.performance-summary-card strong,.compliance-score strong,.commands-hero-state strong,.updates-mode-badge strong{letter-spacing:0;font-family:Unbounded,Lexend Deca,sans-serif;font-weight:400}body h1,body h2,body h3,.metric-label,.sidebar-heading span,.topbar-summary small,.reports-summary-card span,.report-kpi-grid span,.performance-hero span,.performance-last-sample span,.timeline-hero span,.reports-hero span,.alerts-hero span,.commands-hero span,.compliance-hero span,.catalog-hero span,.locations-hero span,.updates-hero span{text-transform:uppercase}a,.location-panel a,.location-selected-panel a{color:var(--green-ink)}.metric-card,.chart-container,.details-panel,.performance-summary-card,.reports-summary-card,.report-picker button,.report-kpi-grid div,.alerts-filter-panel,.commands-panel,.command-target-panel,.compliance-filter-panel,.catalog-form-panel,.location-map-panel,.updates-form-panel{background:var(--surface)}.topbar-summary,.metric-card,.chart-container,.details-panel,.performance-summary-card,.reports-summary-card,.report-kpi-grid div,.security-summary-card,.update-agent-row{background:linear-gradient(135deg, #fffffff5, #f4f6f5b3), var(--surface)}.metric-card:first-child,.reports-summary-card:first-child,.performance-summary-card:first-child,.report-kpi-grid div:first-child,.security-summary-card:first-child{background:linear-gradient(135deg, #00ff001f, #ffffffe6), var(--surface)}.metric-card:nth-child(2),.reports-summary-card:nth-child(2),.performance-summary-card:nth-child(2),.report-kpi-grid div:nth-child(2),.security-summary-card:nth-child(2){background:linear-gradient(135deg, #0000000e, #ffffffeb), var(--surface)}.metric-card:nth-child(3),.reports-summary-card:nth-child(3),.performance-summary-card:nth-child(3),.report-kpi-grid div:nth-child(3),.security-summary-card:nth-child(3){background:linear-gradient(135deg, #9a6b0017, #ffffffeb), var(--surface)}.metric-card:nth-child(4),.reports-summary-card:nth-child(4),.performance-summary-card:nth-child(4),.report-kpi-grid div:nth-child(4),.security-summary-card:nth-child(4){background:linear-gradient(135deg, #00ff0014, #00000009), var(--surface)}.details-panel:nth-of-type(2n),.chart-container:nth-of-type(2n),.update-agent-row:nth-child(2n){background:linear-gradient(135deg, #0000000a, #fffffff0), var(--surface)}.details-panel:nth-of-type(3n),.chart-container:nth-of-type(3n),.update-agent-row:nth-child(3n){background:linear-gradient(135deg, #00ff0013, #fffffff0), var(--surface)}.status-pill.online,.security-summary-card.ok{background:linear-gradient(135deg, #00ff0029, #ffffffe6), var(--surface)}.status-pill.offline,.security-summary-card.danger{background:linear-gradient(135deg, #dc262614, #ffffffeb), var(--surface)}.security-summary-card.warning,.reports-summary-card.warning{background:linear-gradient(135deg, #9a6b001f, #ffffffeb), var(--surface)}.metric-card,.reports-summary-card,.performance-summary-card,.update-agent-row,.report-kpi-grid div{position:relative}.metric-card:before,.reports-summary-card:before,.performance-summary-card:before,.update-agent-row:before{content:"";background:#00ff0073;width:3px;position:absolute;inset:0 auto 0 0}.security-hero,.performance-hero,.timeline-hero,.reports-hero,.alerts-hero,.commands-hero,.compliance-hero,.catalog-hero,.locations-hero,.updates-hero{border:1px solid var(--line);border-left:4px solid var(--green);color:var(--text);background:radial-gradient(circle at 92% 20%,#00ff001a,#0000 12rem),linear-gradient(135deg,#fffffffa,#f4f6f5d1);position:relative;overflow:hidden}.security-hero:after,.performance-hero:after,.timeline-hero:after,.reports-hero:after,.alerts-hero:after,.commands-hero:after,.compliance-hero:after,.catalog-hero:after,.locations-hero:after,.updates-hero:after{opacity:.28;background-image:radial-gradient(var(--green) 1px, transparent 1px);content:"";pointer-events:none;background-size:12px 12px;width:8rem;height:4rem;position:absolute;top:.75rem;right:1rem}.reports-hero span,.alerts-hero span,.commands-hero span,.compliance-hero span,.catalog-hero span,.locations-hero span,.updates-hero span{color:var(--green-ink)}.reports-hero p,.alerts-hero p,.commands-hero p,.compliance-hero p,.catalog-hero p,.locations-hero p,.updates-hero p{color:var(--muted)}.reports-refresh-state,.commands-hero-state,.updates-mode-badge{border:1px solid var(--line);color:var(--muted);background:#ffffffc2}.commands-hero-state span{color:var(--muted)}.usage-bar span{background:linear-gradient(90deg, var(--brand), var(--green))}.performance-summary-card.cpu,.reports-summary-card.ok,.reports-summary-card.warning,.reports-summary-card.danger{border-top-color:var(--green)}.report-picker button:hover{border-color:var(--green)}.report-picker button.active,.location-host-row.selected,.update-agent-row.selected{border-color:var(--green);background:#00ff0012}.alert-row.info,.compliance-finding.info{border-left-color:var(--green);background:#00ff000a}.alert-row.info .alert-severity,.alert-status,.command-status.running,.inventory-software-row.updated .inventory-software-kind{color:var(--green-ink);background:#00ff0021}.catalog-rule.required{border-left-color:var(--green)}.catalog-actions button,.catalog-rule-actions button,.compliance-finding button,.primary-action{border-color:var(--brand);background:var(--brand);color:var(--green)}.catalog-actions button[type=button],.catalog-rule-actions button,.update-mode-group button,.update-agent-actions button{background:var(--surface);color:var(--text)}.update-mode-group button.active{border-color:var(--green);background:var(--brand);color:var(--green)}.updates-mode-badge.all strong,.updates-mode-badge.selected strong{color:var(--green-ink)}.leaflet-container{font-family:Lexend Deca,Overused Grotesk,sans-serif}@media (width<=1240px){.metric-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1100px){.topbar,.container,.metrics-header,.performance-hero,.timeline-hero,.chart-heading,.alerts-hero,.catalog-hero,.commands-hero,.compliance-hero,.reports-hero,.locations-hero{flex-direction:column}.topbar-row{flex-wrap:wrap}.metric-cards,.details-grid,.charts,.performance-summary-grid,.performance-chart-grid,.timeline-summary,.reports-summary-grid,.report-picker,.reports-grid,.report-kpi-grid,.alerts-filters,.catalog-layout,.commands-layout,.commands-action-grid,.commands-summary-grid,.compliance-filters,.compliance-grid,.locations-layout,.locations-grid{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-basis:auto;width:100%;max-height:360px}.security-panel,.security-detail-list .wide{grid-column:auto}.security-summary-grid,.security-detail-list{grid-template-columns:1fr}.reports-grid .details-panel:first-child{grid-column:auto}.performance-last-sample{justify-items:start;min-width:0}}@media (width<=760px){.topbar,.content,.sidebar{padding:1rem}.topbar-summary-group,.agent-tabs{width:100%}.inventory-alert,.timeline-card-header{flex-direction:column}.alert-row{grid-template-columns:1fr}.alert-status{margin-left:0}.catalog-rule{flex-direction:column}.commands-hero-state{justify-items:start}.compliance-card-header,.compliance-finding{grid-template-columns:1fr}.compliance-card-header{flex-direction:column}.compliance-score{justify-items:start}.catalog-rule-actions{align-items:start}.inventory-alert-meta{text-align:left;min-width:0}.inventory-alert-meta span{margin-left:0}.inventory-software-row{grid-template-columns:1fr}}.hw-diff-table{background:var(--surface-muted);border:1px solid var(--line);border-radius:6px;flex-direction:column;gap:.3rem;margin-top:.55rem;padding:.55rem .7rem;display:flex}.hw-diff-row{grid-template-columns:7rem 1fr auto 1fr;align-items:center;gap:.5rem;font-size:.78rem;display:grid}.hw-diff-field{color:var(--muted-strong);font-weight:700}.hw-diff-before{color:var(--red);opacity:.8;word-break:break-all;text-decoration:line-through}.hw-diff-arrow{color:var(--muted);flex-shrink:0;font-size:.7rem}.hw-diff-after{color:var(--green-ink);word-break:break-all;font-weight:600}.hw-diff-fallback{margin:.4rem 0 0;font-size:.8rem}.hwevents-page{flex-direction:column;gap:1rem;padding:1rem;display:flex}.hwevents-hero{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem;display:flex}.hwevents-hero span{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.76rem;font-weight:900}.hwevents-hero h2{margin:.25rem 0;font-size:1.5rem}.hwevents-hero p{color:var(--muted);margin:0}.hwevents-filters{flex-wrap:wrap;gap:.75rem;display:flex}.hwevents-filters input{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex:260px;padding:.45rem .7rem;font-size:.85rem}.hwevents-filters select{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:.45rem .7rem;font-size:.85rem}.hwevents-list{flex-direction:column;gap:.6rem;display:flex}.hwevents-card{border:1px solid var(--line);border-left:3px solid var(--line-strong);background:var(--surface);border-radius:8px;padding:.8rem 1rem}.hwevents-card.warning{border-left-color:var(--amber);background:var(--amber-tint)}.hwevents-card.critical{border-left-color:var(--red);background:var(--red-tint)}.hwevents-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.hwevents-card-host strong{font-size:.92rem;display:block}.hwevents-card-host span{color:var(--muted);font-size:.76rem}.hwevents-card time{color:var(--muted);white-space:nowrap;font-size:.76rem}.export-actions{flex-shrink:0;align-items:center;gap:.3rem;display:flex}.export-btn{border:1px solid var(--line-strong);color:var(--muted);cursor:pointer;white-space:nowrap;background:#ffffffc2;border-radius:999px;align-items:center;gap:.25rem;padding:.3rem .65rem;font-size:.72rem;font-weight:850;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.export-btn:hover:not(:disabled){background:var(--brand);color:var(--green);border-color:var(--brand)}.export-btn:disabled{opacity:.4;cursor:not-allowed}.swcat-page{flex-direction:column;gap:1rem;display:flex}.swcat-category-bar{background:var(--surface-muted);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.swcat-category-list{flex-wrap:wrap;flex:1;align-items:center;gap:.5rem;display:flex}.swcat-empty-hint{font-size:.82rem}.swcat-cat-chip{border:1.5px solid var(--line-strong);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:.45rem;padding:.38rem .85rem;font-size:.82rem;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:flex}.swcat-cat-chip:hover{border-color:var(--brand);background:var(--green-tint)}.swcat-cat-chip.active{background:var(--brand);color:var(--green);border-color:var(--brand)}.swcat-cat-kw-count{background:#ffffff2e;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.68rem;font-weight:700;display:inline-flex}.swcat-cat-chip:not(.active) .swcat-cat-kw-count{background:var(--surface-strong);color:var(--muted)}.swcat-new-btn{border:1.5px dashed var(--line-strong);color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;padding:.38rem 1rem;font-size:.82rem;font-weight:500;transition:border-color .12s,color .12s}.swcat-new-btn:hover{border-color:var(--brand);color:var(--brand)}.swcat-editor{flex-direction:column;gap:1rem;display:flex}.swcat-editor-header{flex-direction:column;gap:.35rem;display:flex}.swcat-name-row{align-items:center;gap:.75rem;display:flex}.swcat-name-input{border:1.5px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;outline:none;flex:1;padding:.45rem .75rem;font-size:1.05rem;font-weight:600}.swcat-name-input:focus{border-color:var(--brand)}.swcat-delete-btn{border:1.5px solid var(--red);color:var(--red);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;padding:.38rem .9rem;font-size:.8rem;font-weight:500;transition:background .12s,color .12s}.swcat-delete-btn:hover{background:var(--red);color:#fff}.swcat-keywords{flex-wrap:wrap;align-items:center;gap:.45rem;min-height:2rem;display:flex}.swcat-kw-chip{background:var(--surface-strong);border:1px solid var(--line-strong);color:var(--text);border-radius:999px;align-items:center;gap:.3rem;padding:.28rem .6rem .28rem .75rem;font-size:.8rem;font-weight:500;display:inline-flex}.swcat-kw-chip button{width:16px;height:16px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.85rem;line-height:1;transition:background .1s,color .1s;display:inline-flex}.swcat-kw-chip button:hover{background:var(--red);color:#fff}.swcat-add-kw{align-items:center;gap:.5rem;display:flex}.swcat-add-kw input{border:1.5px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;outline:none;flex:1;padding:.42rem .75rem;font-size:.85rem}.swcat-add-kw input:focus{border-color:var(--brand)}.swcat-results{flex-direction:column;gap:1rem;display:flex}.swcat-match-list{flex-wrap:wrap;gap:.3rem;display:flex}.swcat-match-chip{background:var(--green-tint);color:var(--green-ink);white-space:nowrap;border:1px solid #00c80040;border-radius:999px;padding:.18rem .55rem;font-size:.75rem;font-weight:500;display:inline-block}.swcat-no-kw-hint{color:var(--muted);font-size:.88rem}.login-overlay{background:var(--brand);z-index:9999;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.login-card{background:#111;border:1px solid #ffffff1a;border-radius:16px;width:100%;max-width:380px;padding:2.5rem 2rem;box-shadow:0 32px 80px #0009}.login-brand{align-items:baseline;gap:.35rem;margin-bottom:.4rem;display:flex}.brand-tec{color:#fff;letter-spacing:-.5px;font-size:1.6rem;font-weight:800}.brand-hub{color:var(--green);letter-spacing:-.5px;font-size:1.6rem;font-weight:800}.brand-mdm-pill{color:#000;background:var(--green);letter-spacing:.05em;border-radius:999px;margin-left:.2rem;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.login-subtitle{color:#ffffff59;margin:0 0 2rem;font-size:.8rem}.login-form{flex-direction:column;gap:1rem;display:flex}.login-field{flex-direction:column;gap:.35rem;display:flex}.login-field label{color:#ffffff80;font-size:.78rem;font-weight:500}.login-field input{color:#fff;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;outline:none;padding:.6rem .8rem;font-size:.92rem;transition:border-color .15s}.login-field input:focus{border-color:var(--green)}.login-field input::placeholder{color:#fff3}.login-error{color:#fca5a5;background:#dc262626;border-radius:6px;margin:0;padding:.5rem .75rem;font-size:.8rem}.login-btn{background:var(--green);color:#000;cursor:pointer;border:none;border-radius:8px;margin-top:.5rem;padding:.7rem;font-size:.92rem;font-weight:700;transition:opacity .15s}.login-btn:disabled{opacity:.45;cursor:not-allowed}.login-btn:not(:disabled):hover{opacity:.85}.login-hint{color:#ffffff8c;margin:0;font-size:.78rem;line-height:1.5}.login-hint strong{color:#fffc}.login-link{color:var(--green);cursor:pointer;text-align:center;background:0 0;border:none;padding:0;font-size:.8rem}.login-link:disabled{opacity:.45;cursor:not-allowed}.login-link:not(:disabled):hover{text-decoration:underline}.login-ok{color:#86efac;background:#22c55e24;border-radius:6px;margin:0;padding:.5rem .75rem;font-size:.82rem}.topbar-user{justify-content:flex-end;align-items:center;gap:.5rem;min-height:34px;display:flex}.topbar-username{color:var(--muted);font-size:.78rem}.topbar-logout-btn{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--text);cursor:pointer;border-radius:5px;padding:.35rem .7rem;font-size:.72rem;transition:color .12s,border-color .12s}.topbar-logout-btn:hover{color:#dc2626;border-color:#dc2626}.topbar-refresh-btn{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:5px;padding:.35rem .7rem;font-size:.72rem;transition:color .12s,border-color .12s,opacity .12s}.topbar-refresh-btn:hover:not(:disabled){color:var(--green-ink);border-color:var(--green-ink)}.topbar-refresh-btn:disabled{opacity:.5;cursor:default}.remote-start-bar{background:var(--surface-muted);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 1rem;display:flex}.remote-start-label{color:var(--muted);font-size:.88rem;font-weight:500}.remote-start-btn{border:1.5px solid var(--brand);background:var(--brand);color:var(--green);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;padding:.38rem 1rem;font-size:.82rem;font-weight:600;transition:opacity .12s;display:flex}.remote-start-btn:hover{opacity:.82}.remote-overlay{z-index:1000;background:#000000d9;justify-content:center;align-items:center;padding:.5rem;display:flex;position:fixed;inset:0}.remote-dialog{background:var(--brand);border-radius:12px;flex-direction:column;width:95vw;height:95vh;display:flex;overflow:hidden;box-shadow:0 24px 64px #0000008c}.remote-header{background:var(--brand);border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 1rem;display:flex}.remote-header-info{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.remote-host{color:var(--green);font-size:.92rem;font-weight:700}.remote-status-badge{color:#ffffffa6;background:#ffffff14;border-radius:999px;padding:.2rem .6rem;font-size:.75rem}.remote-status-badge.live{color:var(--green);background:#00ff0026}.remote-status-badge.disconnected,.remote-status-badge.error{color:#fca5a5;background:#dc262633}.remote-header-actions{gap:.4rem;display:flex}.remote-action-btn{color:#ffffffb3;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;transition:background .12s,color .12s;display:flex}.remote-action-btn:hover{color:#fff;background:#ffffff1a}.remote-action-btn.close:hover{color:#fff;background:#dc262680}.remote-action-btn.sas{color:#fbbf24;letter-spacing:.02em;border-color:#fbbf2466;width:auto;padding:0 .75rem;font-size:.75rem;font-weight:600}.remote-action-btn.sas:hover{color:#fbbf24;background:#fbbf2433}.remote-canvas-wrap{background:#0a0a0a;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.remote-placeholder{color:#ffffff73;justify-content:center;align-items:center;gap:.6rem;font-size:.88rem;display:flex;position:absolute;inset:0}.remote-spinner{border:2px solid #ffffff26;border-top-color:var(--green);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.remote-canvas{cursor:crosshair;opacity:0;outline:none;width:100%;max-width:100%;height:auto;max-height:100%;transition:opacity .2s;display:block}.remote-canvas.visible{opacity:1}.remote-footer{background:var(--brand);color:#fff6;border-top:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding:.45rem 1rem;font-size:.75rem;display:flex}:fullscreen .remote-dialog{border-radius:0;max-width:100vw;max-height:100vh}:fullscreen .remote-dialog{border-radius:0;max-width:100vw;max-height:100vh}.locks-tab,.activity-tab{flex-direction:column;gap:1rem;display:flex}.activity-toggle-row{border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.activity-toggle-note{color:#64748b;max-width:480px;margin:.25rem 0 0;font-size:.8rem}.lock-feedback{border-radius:8px;align-items:flex-start;gap:.4rem;padding:.75rem 1rem;font-size:.85rem;font-weight:500;line-height:1.45;display:flex}.lock-feedback-ok{background:color-mix(in srgb, var(--green) 12%, transparent);border:1px solid color-mix(in srgb, var(--green) 30%, transparent);color:var(--green)}.lock-feedback-err{color:#fc8181;background:#e53e3e1a;border:1px solid #e53e3e4d}.locks-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem;display:grid}.lock-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:8px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.lock-card-blocked{border-left-color:#e53e3e}.lock-card-free{border-left-color:var(--green)}.lock-card-unknown{border-left-color:var(--border)}.lock-card-header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.lock-card-title{align-items:center;gap:.55rem;display:flex}.lock-icon{flex-shrink:0;font-size:1.35rem}.lock-card-title h3{color:var(--text);margin:0;font-size:.95rem;font-weight:600}.lock-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:99px;flex-shrink:0;padding:.18rem .65rem;font-size:.72rem;font-weight:600}.lock-badge-blocked{color:#fc8181;background:#e53e3e26;border:1px solid #e53e3e59}.lock-badge-free{background:color-mix(in srgb, var(--green) 15%, transparent);border:1px solid color-mix(in srgb, var(--green) 35%, transparent);color:var(--green)}.lock-badge-unknown{border:1px solid var(--border);color:var(--text-muted);background:0 0}.lock-description{color:var(--text-muted);margin:0;font-size:.83rem;line-height:1.55}.lock-actions{gap:.5rem;display:flex}.lock-toggle-btn{cursor:pointer;border-radius:6px;padding:.45rem 1.1rem;font-size:.85rem;font-weight:500;transition:background .15s,border-color .15s,color .15s}.lock-toggle-lock{color:#d0d0d0;background:#252525;border:1px solid #505050}.lock-toggle-lock:hover:not(:disabled){color:#fc8181;background:#3c2828;border-color:#e53e3e}.lock-toggle-unlock{color:#fc8181;background:#3c2828;border:1px solid #9b4747}.lock-toggle-unlock:hover:not(:disabled){color:#fff;background:#4f2b2b;border-color:#e53e3e}.lock-toggle-btn:disabled{opacity:.45;cursor:not-allowed}.lock-confirm-box{background:color-mix(in srgb, #d69e2e 8%, var(--surface));border:1px solid #d69e2e4d;border-radius:6px;flex-direction:column;gap:.45rem;padding:.875rem;display:flex}.lock-confirm-question{color:var(--text);margin:0;font-size:.875rem}.lock-confirm-question strong{color:#f6c000}.lock-confirm-detail{color:var(--text-muted);margin:0;font-size:.8rem}.lock-confirm-buttons{gap:.5rem;margin-top:.3rem;display:flex}.lock-confirm-yes{color:#fff;cursor:pointer;background:#9b2c2c;border:1px solid #c53030;border-radius:5px;padding:.38rem .9rem;font-size:.82rem;font-weight:600;transition:background .15s}.lock-confirm-yes:hover:not(:disabled){background:#c53030}.lock-confirm-yes:disabled{opacity:.5;cursor:not-allowed}.lock-confirm-no{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #484848;border-radius:5px;padding:.38rem .9rem;font-size:.82rem;transition:border-color .15s,color .15s}.lock-confirm-no:hover{color:var(--text);border-color:#888}.lock-note{color:var(--text-muted);margin:0;font-size:.78rem;font-style:italic}:root{--ds-line:#0b0b0b1a;--ds-hover:#0b0b0b09;--ds-focus:var(--green-ink)}.ds-row,.ds-ghost{transition:background-color .12s,border-color .12s}.ds-row:hover:not(:disabled),.ds-ghost:hover:not(:disabled){background:var(--ds-hover);border-color:var(--ds-line)}.ds-row:focus-visible,.ds-ghost:focus-visible{outline:2px solid var(--ds-focus);outline-offset:1px}
