.xkpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-bottom:1rem}@media (max-width: 1000px){.xkpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.xkpi{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;text-align:left;background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.85rem 1rem;cursor:pointer;color:inherit;font:inherit;transition:border-color .12s}.xkpi:hover{border-color:var(--border-strong)}.xkpi.on{border-color:var(--brand);box-shadow:inset 0 2px 0 var(--brand)}.xkpi.static{cursor:default}.xkpi.static:hover{border-color:var(--border)}.xkpi-l{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.xkpi-v{font-size:1.6rem;font-weight:700;line-height:1.1;color:var(--text-primary);font-family:var(--font-mono)}.xkpi-s{font-size:.72rem;color:var(--text-muted)}.xbar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.xsearch{display:flex;align-items:center;gap:.4rem;flex:1 1 220px;max-width:340px}.xseg{display:inline-flex;border:1px solid var(--border-strong);border-radius:3px;overflow:hidden}.xseg button{background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-secondary);font-size:.76rem;padding:.42rem .65rem;cursor:pointer;white-space:nowrap}.xseg button:last-child{border-right:none}.xseg button b{font-family:var(--font-mono);margin-left:.2rem;color:var(--text-primary)}.xseg button.on{background:color-mix(in srgb,var(--brand) 13%,transparent);color:var(--brand)}.xseg button.on b{color:var(--brand)}.xsel{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-secondary);font-size:.76rem;padding:.4rem .5rem;max-width:180px;cursor:pointer}.xbar-right{display:flex;gap:.4rem;margin-left:auto}.xicon,.xbtn{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-secondary);font-size:.78rem;padding:.38rem .6rem;cursor:pointer;display:inline-flex;align-items:center;gap:.3rem}.xicon:hover,.xbtn:hover:not(:disabled){color:var(--text-primary);border-color:var(--brand)}.xbtn:disabled{opacity:.4;cursor:default}.xtable{background:var(--bg-surface);border:1px solid var(--border);border-radius:3px}.xscroll{overflow-x:auto}.xhead,.xrow{display:grid;align-items:center;gap:.9rem;padding:0 1.1rem;min-width:min(1060px,100%)}.xhead{position:sticky;top:0;z-index:2;background:var(--bg-surface);border-bottom:1px solid var(--border-strong);height:40px}.xth{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap;-webkit-user-select:none;user-select:none}.xth.sort{cursor:pointer}.xth.sort:hover,.xth.on{color:var(--text-primary)}.xth i{font-style:normal;margin-left:.3rem;opacity:.5;font-size:.6rem}.xth.on i{opacity:1;color:var(--brand)}.xrow{min-height:64px;padding-top:.55rem;padding-bottom:.55rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s;position:relative}.xrow:last-child{border-bottom:none}.xrow:hover{background:var(--bg-raised)}.xrow:hover .dt-chev{color:var(--brand)}.xrow.running:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--brand)}.xtable.dense .xrow{min-height:44px;padding-top:.3rem;padding-bottom:.3rem}.xtable.dense .xsub,.xtable.dense .xprog .xsub{display:none}.xrow.skel span{display:block;height:14px;border-radius:2px;background:var(--bg-raised);animation:dskel 1.2s linear infinite}.xcell-main{display:flex;flex-direction:column;gap:.18rem;min-width:0}.xtarget{font-weight:700;color:var(--text-primary);font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xsub{font-size:.7rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xprof{font-size:.82rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xtype{display:inline-flex;font-size:.62rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:.18rem .45rem;border-radius:2px;border:1px solid var(--border-strong);color:var(--text-secondary)}.xtype.pentest{color:var(--paused);border-color:color-mix(in srgb,var(--paused) 50%,transparent);background:color-mix(in srgb,var(--paused) 10%,transparent)}.xprog{display:flex;flex-direction:column;gap:.2rem}.xprog-bar{display:block;width:120px;height:4px;border-radius:2px;background:var(--bg-raised);overflow:hidden}.xprog-bar span{display:block;height:100%;background:var(--brand)}.xfind{display:flex;flex-direction:column;gap:.3rem;min-width:0}.xfind-top{display:flex;align-items:baseline;gap:.45rem}.xfind-top b{font-size:.95rem;color:var(--text-primary)}.xcrit{font-size:.66rem;font-weight:800;color:var(--severity-critical);font-family:var(--font-mono)}.xdelta{font-size:.68rem;font-weight:700;font-family:var(--font-mono)}.xdelta.bad{color:var(--severity-critical)}.xdelta.good{color:var(--success)}.xdate,.xdur{font-size:.8rem;color:var(--text-secondary)}.xempty{padding:2.2rem 1rem;text-align:center;display:flex;flex-direction:column;gap:.3rem}.xfoot{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.6rem 1.1rem;border-top:1px solid var(--border)}.xfoot svg{vertical-align:-2px}.xpager{display:inline-flex;align-items:center;gap:.4rem;font-size:.76rem}.xpager button{background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-secondary);width:26px;height:24px;cursor:pointer}.xpager button:disabled{opacity:.35;cursor:default}@keyframes dskel{0%,to{opacity:.5}50%{opacity:1}}.xseg-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:.35rem;vertical-align:1px}.xchk{width:16px;height:16px;border-radius:3px;border:1.5px solid var(--border-strong);display:inline-flex;align-items:center;justify-content:center;font-size:.66rem;color:transparent;cursor:pointer;flex-shrink:0;background:transparent;padding:0}.xchk.on{background:var(--brand);border-color:var(--brand);color:#0b0e13;font-weight:800}.xchk.part{border-color:var(--brand);color:var(--brand)}.xbulk{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.55rem 1.1rem;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--brand) 7%,var(--bg-surface));font-size:.8rem;color:var(--text-primary)}.xbulk b{font-family:var(--font-mono)}.xbulk button{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-secondary);font-size:.74rem;padding:.28rem .6rem;cursor:pointer}.xbulk button:hover:not(:disabled){color:var(--text-primary);border-color:var(--brand)}.xbulk .xbulk-x{margin-left:auto}.xrow.sel{background:color-mix(in srgb,var(--brand) 6%,transparent)}.xtag{display:inline-flex;align-items:center;font-size:.58rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:.12rem .36rem;border-radius:2px;border:1px solid var(--border-strong);color:var(--text-secondary);white-space:nowrap}.xtag.crit{color:#0b0e13;background:var(--severity-critical);border-color:var(--severity-critical)}.xtag.ok{color:var(--success);border-color:color-mix(in srgb,var(--success) 45%,transparent)}.xtag.brand{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 45%,transparent)}.xscore{display:flex;align-items:center;gap:.45rem}.xscore-bar{width:56px;height:5px;border-radius:2px;background:var(--bg-raised);overflow:hidden}.xscore-bar i{display:block;height:100%}.xmono-b{font-family:var(--font-mono);font-weight:700}.xdrawer-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;background:#00000073;display:flex;justify-content:flex-end;animation:xfade .15s ease-out}.xdrawer{max-width:96vw;height:100%;background:var(--bg-surface);border-left:1px solid var(--border-strong);box-shadow:-18px 0 40px #00000080;display:flex;flex-direction:column;animation:xslide .2s ease-out}@keyframes xfade{0%{opacity:0}to{opacity:1}}@keyframes xslide{0%{transform:translate(24px);opacity:.6}to{transform:none;opacity:1}}.xdrawer-h{display:flex;align-items:flex-start;gap:.7rem;padding:1rem 1.2rem;border-bottom:1px solid var(--border)}.xdrawer-x{margin-left:auto;flex-shrink:0;background:var(--bg-raised);border:1px solid var(--border-strong);color:var(--text-secondary);border-radius:3px;width:28px;height:28px;cursor:pointer}.xdrawer-x:hover{color:var(--text-primary);border-color:var(--brand)}.xdrawer-b{flex:1;overflow-y:auto;padding:1rem 1.2rem 1.4rem;display:flex;flex-direction:column;gap:1.05rem}.xdrawer-f{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap;padding:.8rem 1.2rem;border-top:1px solid var(--border);background:var(--bg-raised)}.xd-title{font-weight:700;font-size:1rem;color:var(--text-primary);line-height:1.3}.xd-sub{font-size:.74rem;color:var(--text-muted);margin-top:.2rem}.xd-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.5rem}.xd-stat{background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.55rem .7rem}.xd-stat-k{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.xd-stat-v{font-size:1.15rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary);margin-top:.2rem}.xd-stat-s{font-size:.66rem;color:var(--text-muted);margin-top:.1rem}.xd-sec-t{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.4rem}.xd-code{font-family:var(--font-mono);font-size:.76rem;white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);background:var(--terminal-bg, #05070a);border:1px solid var(--border);border-radius:3px;padding:.65rem .75rem;max-height:260px;overflow-y:auto}.xd-steps{margin:0;padding-left:1.15rem;color:var(--text-secondary);font-size:.84rem;line-height:1.6}.xd-triage{display:inline-flex;border:1px solid var(--border-strong);border-radius:3px;overflow:hidden}.xd-triage button{background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-secondary);font-size:.74rem;padding:.35rem .6rem;cursor:pointer}.xd-triage button:last-child{border-right:none}.xd-triage button.on{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);font-weight:700}.xd-triage button:disabled{cursor:default}.pn-gw{display:flex;align-items:center;gap:.7rem;padding:.8rem 1.1rem;border-bottom:1px solid var(--border);background:var(--bg-raised)}.pn-gw-ic{width:32px;height:32px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;color:var(--paused);background:color-mix(in srgb,var(--paused) 12%,transparent);flex-shrink:0}.pn-gw-n{font-weight:700;color:var(--text-primary);font-size:.9rem}.pn-gw-meta{margin-left:auto;font-size:.74rem;color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap}.sp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.85rem}.sp-card{display:flex;flex-direction:column;gap:.5rem;background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.9rem 1rem;cursor:pointer;transition:border-color .12s}.sp-card:hover{border-color:var(--border-strong)}.sp-card:hover .sp-go{color:var(--brand)}.sp-h{display:flex;align-items:flex-start;gap:.6rem}.sp-ic{width:32px;height:32px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-raised);border:1px solid var(--border);flex-shrink:0}.sp-n{font-weight:700;color:var(--text-primary);font-size:.92rem}.sp-t{font-size:.74rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sp-d{font-size:.76rem;color:var(--text-muted);line-height:1.45;flex:1}.sp-stats{display:flex;gap:.9rem;flex-wrap:wrap;font-size:.72rem;color:var(--text-secondary)}.sp-stats span{display:inline-flex;align-items:center;gap:.25rem}.sp-f{display:flex;justify-content:space-between;align-items:center;gap:.5rem;border-top:1px solid var(--border);padding-top:.55rem;font-size:.7rem}.sp-go{color:var(--text-secondary);font-weight:600}.sp-mod{display:flex;gap:.5rem;align-items:flex-start;padding:.4rem .55rem;border:1px solid var(--border);border-radius:3px;background:var(--bg-raised)}.sp-mod-ck{color:var(--success);font-weight:800;font-size:.75rem;margin-top:1px}.sp-mod-t{font-size:.8rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;flex-wrap:wrap}.sp-mod-d{font-size:.7rem;color:var(--text-muted);margin-top:.1rem;line-height:1.4}.sp-pick{display:grid;grid-template-columns:1fr 1fr;gap:.3rem}.sp-opt{display:flex;align-items:center;gap:.45rem;text-align:left;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.4rem .55rem;cursor:pointer;color:var(--text-secondary);font:inherit;font-size:.78rem}.sp-opt:hover{border-color:var(--border-strong)}.sp-opt.on{color:var(--text-primary);border-color:color-mix(in srgb,var(--brand) 45%,transparent)}@media (max-width: 640px){.sp-pick{grid-template-columns:1fr}}.ch-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.6rem;margin-bottom:1rem}.ch-act{display:flex;align-items:flex-start;gap:.65rem;text-align:left;background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.75rem .85rem;cursor:pointer;color:inherit;font:inherit;transition:border-color .12s}.ch-act:hover{border-color:var(--brand)}.ch-act-ic{width:32px;height:32px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent);flex-shrink:0}.ch-act b{display:block;font-size:.86rem;color:var(--text-primary)}.ch-act small{display:block;font-size:.72rem;color:var(--text-muted);margin-top:.15rem;line-height:1.4}.ch-grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr;gap:.85rem;align-items:stretch}@media (max-width: 1100px){.ch-grid{grid-template-columns:1fr}}.ex-note{display:flex;gap:.55rem;align-items:flex-start;margin-bottom:.85rem;padding:.7rem .9rem;border:1px solid var(--border);border-left:2px solid var(--brand);border-radius:3px;background:var(--bg-surface);font-size:.8rem;color:var(--text-secondary);line-height:1.5}.ex-note svg{color:var(--brand);flex-shrink:0;margin-top:2px}.ex-level{display:flex;gap:.6rem;align-items:flex-start;text-align:left;background:var(--bg-raised);border:1px solid var(--border);border-left:2px solid var(--c);border-radius:3px;padding:.55rem .7rem;cursor:pointer;color:inherit;font:inherit}.ex-level.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 8%,var(--bg-raised))}.ex-level-n{font-weight:800;color:var(--c);font-size:.9rem;width:14px}.ex-level b{font-size:.84rem;color:var(--text-primary)}.ex-level small{display:block;font-size:.72rem;color:var(--text-muted);margin-top:.15rem;line-height:1.4}.ig-logo{width:32px;height:32px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:.8rem;flex-shrink:0}.ig-road{display:flex;flex-wrap:wrap;gap:.35rem;opacity:.8}.st-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:1.1rem;align-items:start}@media (max-width: 1440px){.st-grid{grid-template-columns:1fr}.st-nav{position:static;top:auto;flex-direction:row;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.st-group{display:flex;flex-direction:row;flex-wrap:wrap;gap:.4rem}.st-group-t{display:none}.st-nav .st-link{padding:.32rem .6rem;border:1px solid var(--border)}.st-nav .st-link small{display:none}.st-nav .st-link svg{margin-top:0}}.st-nav{position:sticky;top:76px;display:flex;flex-direction:column;gap:.9rem}.st-group-t{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 .35rem .4rem}.st-link{display:flex;gap:.55rem;align-items:flex-start;padding:.5rem .6rem;border-radius:3px;border:1px solid transparent;color:var(--text-secondary);text-decoration:none}.st-link svg{margin-top:2px;flex-shrink:0}.st-link b{display:block;font-size:.82rem;font-weight:600;color:var(--text-primary)}.st-link small{display:block;font-size:.68rem;color:var(--text-muted);margin-top:.05rem}.st-link:hover{background:var(--bg-surface)}.st-link.on{background:var(--bg-surface);border-color:var(--border);box-shadow:inset 2px 0 0 var(--brand)}.st-link.on svg{color:var(--brand)}.st-content{min-width:0;display:flex;flex-direction:column;gap:.85rem}.st-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:.2rem}.st-head-t{font-size:1.05rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.6rem}.st-head-s{font-size:.8rem;color:var(--text-muted);margin-top:.2rem;line-height:1.5;max-width:760px}.st-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:3px}.st-card-h{padding:.85rem 1.1rem 0}.st-card-t{font-weight:700;font-size:.92rem;color:var(--text-primary)}.st-card-d{font-size:.76rem;color:var(--text-muted);margin-top:.2rem;line-height:1.5}.st-card-b{padding:.85rem 1.1rem 1rem;display:flex;flex-direction:column;gap:.75rem}.st-card-b .field{margin-bottom:0}.st-card-f{display:flex;justify-content:flex-end;align-items:center;gap:.5rem;padding:.7rem 1.1rem;border-top:1px solid var(--border);background:var(--bg-raised)}.st-2col{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media (max-width: 700px){.st-2col{grid-template-columns:1fr}}.st-switch{display:flex;gap:.6rem;align-items:flex-start;cursor:pointer;padding:.55rem .65rem;border:1px solid var(--border);border-radius:3px;background:var(--bg-raised)}.st-switch:hover{border-color:var(--border-strong)}.st-switch .sw{width:30px;height:17px;border-radius:999px;background:var(--border-strong);position:relative;flex-shrink:0;margin-top:1px;transition:background .15s}.st-switch .sw:after{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:#fff;transition:left .15s}.st-switch.on .sw{background:var(--brand)}.st-switch.on .sw:after{left:15px}.st-switch b{display:block;font-size:.82rem;color:var(--text-primary);font-weight:600}.st-switch small{display:block;font-size:.72rem;color:var(--text-muted);margin-top:.1rem;line-height:1.4}.st-meter{height:6px;border-radius:3px;background:var(--bg-raised);overflow:hidden}.st-meter i{display:block;height:100%;transition:width .2s}.st-copy{display:flex;gap:.4rem}.st-copy input{flex:1;min-width:0}.gw-actions{display:flex;gap:.3rem;justify-content:flex-end;flex-wrap:nowrap}.gw-actions .xbtn{white-space:nowrap}.gw-actions .xbtn.gw-ic{padding:.38rem .45rem}.ob-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:16px}.ob-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#030508a8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:ob-fade .18s ease-out}.ob-dialog{position:relative;width:780px;max-width:100%;max-height:min(88vh,860px);display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;box-shadow:0 30px 80px #0000008c,inset 0 2px 0 var(--brand);animation:ob-in .22s cubic-bezier(.22,.61,.36,1)}@keyframes ob-fade{0%{opacity:0}to{opacity:1}}@keyframes ob-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.ob-head{display:flex;align-items:flex-start;gap:1rem;padding:1.15rem 1.35rem 1rem;border-bottom:1px solid var(--border)}.ob-eyebrow{font-family:var(--font-mono);font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--brand)}.ob-sep{color:var(--text-muted);margin:0 .25rem}.ob-title{margin:.3rem 0 0;font-size:1.22rem;font-weight:700;line-height:1.25;color:var(--text-primary)}.ob-sub{margin-top:.3rem;font-size:.8rem;color:var(--text-secondary);line-height:1.45;max-width:60ch}.ob-x{margin-left:auto;flex-shrink:0;width:30px;height:30px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-secondary);font-size:1.1rem;line-height:1}.ob-x:hover{color:var(--text-primary);border-color:var(--border-strong)}.ob-body{padding:1.1rem 1.35rem;overflow-y:auto;flex:1;min-height:0}.ob-foot{display:flex;align-items:center;gap:.6rem;padding:.85rem 1.35rem;border-top:1px solid var(--border);background:var(--bg-base);flex-wrap:wrap}.ob-hint{font-size:.74rem;color:var(--text-muted)}.ob-count{font-family:var(--font-mono);font-size:.72rem;font-weight:700;color:var(--text-secondary);white-space:nowrap}.ob-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.ob-opt{display:flex;flex-direction:column;gap:.45rem;text-align:left;width:100%;min-height:128px;padding:.95rem 1rem .85rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;color:inherit;font:inherit;cursor:pointer;transition:border-color .12s,background .12s,box-shadow .12s}.ob-opt:hover{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 5%,var(--bg-raised))}.ob-opt:focus-visible,.ob-opt.kb:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 35%,transparent)}.ob-opt-top{display:flex;align-items:flex-start;gap:.5rem}.ob-opt-label{flex:1;font-weight:700;font-size:.92rem;color:var(--text-primary);line-height:1.3}.ob-opt-desc{font-size:.78rem;color:var(--text-secondary);line-height:1.45;flex:1}.ob-opt-foot{display:flex;align-items:center;gap:.6rem;margin-top:.2rem}.ob-meter{display:flex;gap:3px;flex:1;min-width:60px}.ob-meter i{flex:1;height:4px;border-radius:1px;background:var(--border-strong)}.ob-meter i.o{background:var(--border)}.ob-meter i.d{background:var(--success)}.ob-meter i.c{background:var(--brand)}.ob-progress{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}.ob-progress .ob-meter i{height:5px}.ob-banner{margin-bottom:.9rem;padding:.6rem .8rem;font-size:.8rem;color:var(--text-secondary);border:1px solid color-mix(in srgb,var(--success) 40%,transparent);border-left-width:3px;border-radius:3px;background:color-mix(in srgb,var(--success) 7%,transparent)}.ob-banner b{color:var(--success)}.ob-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.ob-step{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:.85rem;align-items:start;padding:.8rem .75rem;border:1px solid transparent;border-radius:3px}.ob-step:not(:last-child):after{content:"";position:absolute;left:calc(.75rem + 13px);top:calc(.8rem + 30px);bottom:-.8rem;width:2px;background:var(--border)}.ob-step.done:not(:last-child):after{background:color-mix(in srgb,var(--success) 50%,var(--border))}.ob-step.next{border-color:color-mix(in srgb,var(--brand) 45%,transparent);background:color-mix(in srgb,var(--brand) 6%,transparent)}.ob-dot{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.76rem;font-weight:700;background:var(--bg-surface);border:1.5px solid var(--border-strong);color:var(--text-muted)}.ob-step.next .ob-dot{border-color:var(--brand);color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}.ob-step.done .ob-dot{background:var(--success);border-color:var(--success);color:var(--bg-base)}.ob-step-main{min-width:0;padding-top:.2rem}.ob-step-title{font-weight:700;font-size:.88rem;color:var(--text-primary);display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.ob-step.done .ob-step-title{color:var(--text-secondary)}.ob-opt-tag{font-family:var(--font-mono);font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:2px;padding:.08rem .32rem}.ob-step-desc{margin-top:.2rem;font-size:.78rem;color:var(--text-secondary);line-height:1.45}.ob-step.done .ob-step-desc{color:var(--text-muted)}.ob-step-detail{margin-top:.35rem;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted)}.ob-step-detail.ok{color:var(--success)}.ob-cta{white-space:nowrap;align-self:center;font-size:.78rem;padding:.4rem .7rem}.ob-cta.hot{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 55%,transparent);font-weight:700}.ob-dock{position:fixed;right:20px;bottom:20px;z-index:150;width:320px;max-width:calc(100vw - 32px);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;box-shadow:0 18px 50px #00000080,inset 0 2px 0 var(--brand);padding:.75rem .85rem .85rem;animation:ob-in .22s cubic-bezier(.22,.61,.36,1)}.ob-dock-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.55rem}.ob-dock-head .ob-x{width:24px;height:24px;font-size:.95rem;margin-left:0}.ob-dock-head .ob-count{margin-left:auto}.ob-dock-body{margin-top:.65rem}.ob-dock-title{font-weight:700;font-size:.86rem;color:var(--text-primary);margin:.15rem 0}.ob-dock-title.ok{color:var(--success)}.ob-dock-sub{font-size:.72rem;color:var(--text-muted)}.ob-dock-actions{display:flex;justify-content:flex-end;gap:.45rem;margin-top:.65rem}.ob-dock-actions button{font-size:.76rem;padding:.38rem .65rem}.ob-pill{position:fixed;right:20px;bottom:20px;z-index:150;display:inline-flex;align-items:center;gap:.6rem;width:250px;padding:.55rem .75rem;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;box-shadow:0 12px 34px #00000073,inset 0 2px 0 var(--brand);color:inherit;font:inherit;cursor:pointer}.ob-pill:hover{border-color:var(--brand)}@media (max-width: 720px){.ob-grid{grid-template-columns:1fr}.ob-opt{min-height:0}.ob-step{grid-template-columns:28px minmax(0,1fr)}.ob-step .ob-cta{grid-column:2;justify-self:start}.ob-head,.ob-body,.ob-foot{padding-left:1rem;padding-right:1rem}.ob-foot>.btn-primary{width:100%}.ob-dock{right:16px;left:16px;bottom:16px;width:auto}}@media (prefers-reduced-motion: reduce){.ob-dialog,.ob-dock{animation:ob-fade .18s ease-out}}.dgrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.85rem;align-items:stretch}.dw{position:relative;display:flex;flex-direction:column;min-width:0}.dw.s2{grid-column:span 2}.dw.s3{grid-column:span 3}.dw.s4{grid-column:span 4}.dw.s6{grid-column:span 6}.dw.s8{grid-column:span 8}.dw.s12{grid-column:span 12}@media (max-width: 1280px){.dw.s2,.dw.s3{grid-column:span 4}}@media (max-width: 1000px){.dw.s2,.dw.s3{grid-column:span 6}.dw.s4,.dw.s6,.dw.s8{grid-column:span 12}}@media (max-width: 640px){.dw{grid-column:span 12!important}}.dw-body{flex:1;display:flex;flex-direction:column;min-width:0}.dw-body>*{flex:1}.dpanel{margin-bottom:0!important;display:flex;flex-direction:column}.dpanel>.panel-body{flex:1}.dempty{padding:1.6rem 1rem;text-align:center}.dskel{height:112px;border-radius:3px;background:linear-gradient(90deg,var(--bg-surface),var(--bg-raised),var(--bg-surface));background-size:200% 100%;animation:dskel 1.2s linear infinite;border:1px solid var(--border)}@keyframes dskel{to{background-position:-200% 0}}.dkpi{background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.85rem .95rem .75rem;display:flex;flex-direction:column;min-height:118px;transition:border-color .12s}.dkpi.click{cursor:pointer}.dkpi.click:hover{border-color:var(--border-strong)}.dkpi-top{display:flex;align-items:center;gap:.4rem;color:var(--text-muted)}.dkpi-ic{display:inline-flex;flex-shrink:0}.dkpi-lbl{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dkpi-mid{display:flex;align-items:baseline;gap:.45rem;margin-top:.45rem}.dkpi-val{font-size:1.65rem;font-weight:700;line-height:1.1;color:var(--text-primary);font-family:var(--font-mono)}.dkpi-val small{font-size:.8rem;color:var(--text-muted);font-weight:500}.dkpi-delta{font-size:.72rem;font-weight:700;font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap}.dkpi-delta.good{color:var(--success)}.dkpi-delta.bad{color:var(--severity-critical)}.dkpi-foot{margin-top:auto;padding-top:.45rem;display:flex;align-items:flex-end;justify-content:space-between;gap:.4rem}.dkpi-sub{font-size:.7rem;color:var(--text-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.risk-comp{margin-top:.4rem;border-top:1px solid var(--border);padding-top:.7rem}.risk-bar{display:flex;gap:2px;height:6px;border-radius:2px;overflow:hidden;background:var(--bg-raised);margin-bottom:.55rem}.risk-row{display:flex;align-items:center;gap:.4rem;font-size:.78rem;padding:.14rem 0}.risk-row i{width:8px;height:8px;border-radius:1px;flex-shrink:0}.risk-row b{margin-left:auto}.dtop-row{display:flex;align-items:center;gap:.6rem;padding:.6rem 1rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.dtop-row:last-child{border-bottom:none}.dtop-row:hover{background:var(--bg-raised)}.dtop-n{width:14px;font-size:.72rem}.dtop-main{display:flex;flex-direction:column;min-width:0;flex:1}.dtop-title{font-size:.84rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dtop-sub{font-size:.68rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dtop-age{font-size:.7rem;width:34px;text-align:right}.dtop-risk{font-size:.95rem;width:30px;text-align:right}.dtag{font-size:.58rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:.14rem .38rem;border-radius:2px;border:1px solid var(--border-strong);color:var(--text-secondary);white-space:nowrap}.dtag.crit{color:#0b0e13;background:var(--severity-critical);border-color:var(--severity-critical)}.sev-legend{margin-top:.9rem;display:flex;flex-direction:column;gap:.45rem}.sev-legend>div{display:flex;align-items:center;gap:.5rem;font-size:.82rem}.sev-legend b{margin-left:auto}.sev-legend span.mono{width:38px;text-align:right;font-size:.72rem}.dseg{display:inline-flex;border:1px solid var(--border-strong);border-radius:3px;overflow:hidden}.dseg button{background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-secondary);font-size:.76rem;font-family:var(--font-mono);padding:.38rem .7rem;cursor:pointer}.dseg button:last-child{border-right:none}.dseg button.on{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);font-weight:700}.dbtn{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--border-strong)!important;border-radius:3px}.dedit-bar{display:flex;align-items:center;gap:.55rem;margin-bottom:.85rem;padding:.6rem .85rem;border:1px dashed var(--brand);border-radius:3px;background:color-mix(in srgb,var(--brand) 7%,transparent);color:var(--text-secondary);font-size:.8rem}.dedit-bar svg{color:var(--brand);flex-shrink:0}.dw.edit{outline:1px dashed var(--border-strong);outline-offset:3px;border-radius:3px;cursor:grab}.dw.edit .dw-body{pointer-events:none;opacity:.82}.dw.dragging{opacity:.35}.dw.over{outline:2px solid var(--brand)}.dw-tools{display:flex;align-items:center;gap:.3rem;margin-bottom:.35rem;font-size:.7rem}.dw-grip{color:var(--text-muted);display:inline-flex}.dw-name{flex:1;min-width:0;color:var(--text-secondary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dw-tools button{background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-secondary);border-radius:3px;height:22px;min-width:22px;padding:0 .3rem;font-size:.7rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.dw-tools button:hover:not(:disabled){color:var(--text-primary);border-color:var(--brand)}.dw-tools button:disabled{opacity:.35;cursor:default}.dw-tools .dw-size{font-family:var(--font-mono);font-weight:800;color:var(--brand)}.dw-tools .dw-x:hover{color:var(--severity-critical);border-color:var(--severity-critical)}.dw-add{display:flex;min-height:118px;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;border:1px dashed var(--border-strong);border-radius:3px;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.86rem;font-weight:600}.dw-add:hover{border-color:var(--brand);color:var(--brand)}.dgallery{width:560px}.dgal-list{display:flex;flex-direction:column;gap:.45rem;max-height:60vh;overflow-y:auto;margin-top:.4rem}.dgal-item{display:flex;align-items:center;gap:.7rem;text-align:left;padding:.7rem .8rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;cursor:pointer;color:var(--text-primary)}.dgal-item:hover{border-color:var(--brand)}.dgal-ic{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent);flex-shrink:0}.dgal-t{display:block;font-weight:700;font-size:.86rem}.dgal-d{display:block;font-size:.74rem;color:var(--text-muted);margin-top:.1rem}.dgal-plus{margin-left:auto;color:var(--text-muted)}.dgal-item:hover .dgal-plus{color:var(--brand)}.sc-badge{display:inline-flex;align-items:baseline;gap:.35rem;border:1px solid;border-radius:3px;font-family:var(--font-mono);line-height:1;white-space:nowrap}.sc-badge b{font-weight:800}.sc-badge span{font-weight:700;color:var(--text-secondary)}.sc-badge.sm{padding:.16rem .38rem;font-size:.78rem}.sc-badge.md{padding:.28rem .5rem;font-size:.95rem}.sc-badge.md span{font-size:.74rem}.sc-badge.lg{padding:.45rem .7rem;font-size:1.5rem}.sc-badge.lg span{font-size:.95rem}.sc-badge.xl{flex-direction:column;align-items:center;gap:.3rem;padding:.7rem 1rem;min-width:84px;font-size:2.6rem}.sc-badge.xl span{font-size:.9rem}.sc-badge.none{color:var(--text-muted)!important;border-color:var(--border-strong)!important;background:transparent!important}.sc-delta{font-family:var(--font-mono);font-size:.74rem;font-weight:700;white-space:nowrap}.sc-delta.up{color:var(--success)}.sc-delta.down{color:var(--severity-critical)}.sc-delta.muted{color:var(--text-muted);font-weight:500}.sc-spark{display:block;overflow:visible}.sc-spark-ref{stroke:var(--border);stroke-dasharray:2 3}.sc-spark-empty{display:inline-block;height:2px;background:var(--border);vertical-align:middle}.sc-counts{display:inline-flex;align-items:center;gap:3px;flex-wrap:wrap}.sc-table .xhead,.sc-table .xrow{gap:.6rem}.sc-table .xhead{height:auto;min-height:40px;padding-top:.35rem;padding-bottom:.35rem}.sc-table .xth{white-space:normal;line-height:1.2}.sc-cnt{min-width:24px;text-align:center;font-family:var(--font-mono);font-size:.72rem;font-weight:700;padding:.12rem .25rem;border-radius:2px;border:1px solid var(--border-strong)}.sc-cnt.critical{color:var(--severity-critical);border-color:color-mix(in srgb,var(--severity-critical) 45%,transparent)}.sc-cnt.high{color:var(--severity-high);border-color:color-mix(in srgb,var(--severity-high) 45%,transparent)}.sc-cnt.medium{color:var(--severity-medium);border-color:color-mix(in srgb,var(--severity-medium) 40%,transparent)}.sc-cnt.low{color:var(--severity-low);border-color:color-mix(in srgb,var(--severity-low) 40%,transparent)}.sc-cnt.zero{color:var(--text-muted);border-color:var(--border);opacity:.55}.sc-dist{display:flex;gap:2px;height:26px;margin-bottom:.9rem;border-radius:3px;overflow:hidden}.sc-dist button{min-width:44px;border:none;border-radius:0;padding:0 .5rem;font-family:var(--font-mono);font-size:.72rem;font-weight:800;color:#0b0e13;cursor:pointer;opacity:.85;transition:opacity .12s;white-space:nowrap;overflow:hidden}.sc-dist button:hover,.sc-dist button.on{opacity:1}.sc-dist button.on{box-shadow:inset 0 0 0 2px var(--text-primary)}.sc-dist button.none{background:var(--bg-raised);color:var(--text-secondary)}.sc-dist-empty{flex:1;background:var(--bg-raised)}.sc-chart{width:100%;height:auto;display:block}.sc-chart-band{font-family:var(--font-mono);font-size:10px;font-weight:800}.sc-chart-tick{font-family:var(--font-mono);font-size:10px;fill:var(--text-muted)}.sc-chart-empty{font-size:.78rem;color:var(--text-muted);padding:1rem 0}.sc-drawer{display:flex;flex-direction:column;gap:1.1rem}.sc-hero{display:flex;align-items:center;gap:1rem}.sc-hero-meta{display:flex;flex-direction:column;gap:.35rem;min-width:0}.sc-hero-title{font-weight:700;font-size:1rem;color:var(--text-primary)}.sc-hero-row{display:flex;gap:.9rem;flex-wrap:wrap}.sc-conf{font-size:.72rem;font-family:var(--font-mono);color:var(--text-muted)}.sc-conf.high{color:var(--success)}.sc-conf.medium{color:var(--severity-medium)}.sc-conf.low{color:var(--severity-high)}.sc-block{border-top:1px solid var(--border);padding-top:.9rem}.sc-block-title{font-family:var(--font-mono);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.6rem}.sc-actions{display:flex;justify-content:flex-end;gap:.5rem;border-top:1px solid var(--border);padding-top:.9rem}.sc-breakdown{display:flex;flex-direction:column;gap:.9rem}.sc-eq{display:flex;flex-wrap:wrap;gap:.35rem .7rem;align-items:baseline;font-family:var(--font-mono);font-size:.76rem;color:var(--text-secondary);padding:.55rem .7rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px}.sc-eq b{color:var(--text-primary)}.sc-eq i{font-style:normal;font-family:var(--font-sans);font-size:.7rem;color:var(--text-muted)}.sc-eq-cap{color:var(--severity-high)}.sc-cap{font-size:.8rem;color:var(--text-secondary);padding:.55rem .75rem;border:1px solid color-mix(in srgb,var(--severity-high) 40%,transparent);border-left-width:3px;border-radius:3px;background:color-mix(in srgb,var(--severity-high) 6%,transparent)}.sc-cap b{color:var(--severity-high);margin-right:.3rem}.sc-factor{display:flex;flex-direction:column;gap:.35rem}.sc-factor-head{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem}.sc-factor-name{font-weight:700;font-size:.86rem;color:var(--text-primary)}.sc-factor-pts{font-family:var(--font-mono);font-size:.8rem;font-weight:700;color:var(--text-secondary);white-space:nowrap}.sc-factor-pts i{font-style:normal;color:var(--text-muted);font-weight:400}.sc-meter{height:4px;border-radius:2px;background:var(--bg-raised);overflow:hidden}.sc-meter i{display:block;height:100%}.sc-how{font-size:.76rem;color:var(--text-muted);line-height:1.45}.sc-items{list-style:none;margin:.15rem 0 0;padding:0;border:1px solid var(--border);border-radius:3px}.sc-items li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.6rem;align-items:center;padding:.45rem .6rem;border-bottom:1px solid var(--border);font-size:.78rem}.sc-items li:last-child{border-bottom:none}.sc-items li:has(>.sc-it-main:first-child){grid-template-columns:minmax(0,1fr) auto}.sc-it-main{min-width:0;color:var(--text-primary);display:flex;flex-direction:column;gap:.1rem;overflow:hidden}.sc-it-host{font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-it-meta{font-family:var(--font-mono);font-size:.7rem;color:var(--text-secondary);white-space:nowrap;display:inline-flex;gap:.35rem;align-items:center}.sc-sev{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:.12rem .32rem;border-radius:2px;border:1px solid var(--border-strong);color:var(--text-secondary);white-space:nowrap}.sc-sev.critical{color:var(--severity-critical);border-color:color-mix(in srgb,var(--severity-critical) 45%,transparent)}.sc-sev.high{color:var(--severity-high);border-color:color-mix(in srgb,var(--severity-high) 45%,transparent)}.sc-sev.medium{color:var(--severity-medium);border-color:color-mix(in srgb,var(--severity-medium) 40%,transparent)}.sc-sev.low{color:var(--severity-low);border-color:color-mix(in srgb,var(--severity-low) 40%,transparent)}.sc-link{background:none;border:none;padding:0;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-link:hover{color:var(--brand);text-decoration:underline}.sc-foot{display:flex;flex-direction:column;gap:.2rem;font-size:.72rem;color:var(--text-muted)}.sc-nodata{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;color:var(--text-secondary);padding:.8rem;border:1px dashed var(--border-strong);border-radius:3px}.sc-nodata b{color:var(--text-primary)}.sc-method{font-size:.84rem;line-height:1.55;color:var(--text-secondary)}.sc-method p{margin:0 0 .8rem}.sc-method ol{margin:0 0 .8rem;padding-left:1.2rem;display:flex;flex-direction:column;gap:.45rem}.sc-method b{color:var(--text-primary)}.sc-widget{display:flex;gap:1rem;align-items:flex-start}.sc-widget-side{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:0}.sc-widget-list{display:flex;flex-direction:column;gap:.3rem}.sc-widget-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem;align-items:center;background:none;border:none;padding:.2rem 0;color:var(--text-primary);font:inherit;font-size:.8rem;text-align:left;cursor:pointer}.sc-widget-list button:hover{color:var(--brand)}.sc-widget-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lx-page .ph-sticky{display:flex;align-items:center;justify-content:space-between;gap:1rem}.lx-tenant{margin-left:.6rem;font-size:.72rem;font-weight:600;color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:3px;padding:.15rem .5rem}.lx-ph-ready{display:inline-flex;align-items:center;gap:.45rem;font-size:.76rem;color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:3px;padding:.35rem .65rem;white-space:nowrap}.lx-ready-dot{width:8px;height:8px;border-radius:50%;background:var(--severity-high);flex-shrink:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--severity-high) 18%,transparent)}.lx-ready-dot.ok{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 18%,transparent)}.lx-prog{margin-bottom:1rem}.lx-prog-l{display:flex;justify-content:space-between;font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.35rem}.lx-prog-l b{color:var(--text-primary)}.lx-prog-bar{height:4px;border-radius:2px;background:var(--bg-raised);overflow:hidden}.lx-prog-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--success));transition:width .3s ease}.lx-quick{margin-bottom:.75rem;border:1px dashed var(--border-strong);border-radius:3px;padding:.75rem .85rem;background:color-mix(in srgb,var(--brand) 3%,transparent)}.lx-quick-h{display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:700;color:var(--text-primary);margin-bottom:.55rem}.lx-quick-h svg{color:var(--brand)}.lx-quick-h span{font-weight:400;color:var(--text-muted);font-size:.74rem}.lx-quick-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem}.lx-qcard{display:flex;flex-direction:column;gap:.15rem;text-align:left;background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.55rem .7rem;cursor:pointer;color:inherit;font:inherit;transition:border-color .12s}.lx-qcard:hover{border-color:var(--brand)}.lx-qcard.on{border-color:var(--success);background:color-mix(in srgb,var(--success) 6%,var(--bg-surface))}.lx-q-t{font-weight:700;font-size:.82rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lx-q-d{font-size:.7rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lx-q-f{font-size:.66rem;color:var(--text-muted);margin-top:.15rem}.lx-qcard.on .lx-q-f{color:var(--success);font-weight:600}.lx-sec-h{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:.85rem}.lx-badge{flex-shrink:0;width:26px;height:26px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.68rem;font-weight:700;color:var(--text-muted);border:1px solid var(--border-strong);background:var(--bg-raised)}.lx-sec.active .lx-badge{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 55%,transparent);background:color-mix(in srgb,var(--brand) 10%,transparent)}.lx-sec.ok .lx-badge{color:var(--success);border-color:color-mix(in srgb,var(--success) 45%,transparent);background:color-mix(in srgb,var(--success) 10%,transparent)}.lx-sec-tt{flex:1;min-width:0}.lx-sec-tt h3{margin:0 0 .12rem!important}.lx-sec-tt .desc{margin-bottom:0!important}.lx-val{flex-shrink:0;max-width:46%;font-size:.72rem;font-weight:600;color:var(--text-secondary);background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.2rem .5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lx-target-search-w{flex:1;min-width:0;display:flex;align-items:center;gap:.4rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:0 .6rem;color:var(--text-muted)}.lx-target-search-w .lx-target-search{border:none;background:transparent;padding:.5rem 0}.lx-tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.5rem;max-height:330px;overflow-y:auto;padding-right:2px}.lx-cov{display:flex;gap:1.4rem;flex-wrap:wrap}.lx-sub-n{text-transform:none;letter-spacing:0;color:var(--text-muted);font-size:.68rem;margin-left:.3rem}.lx-chips{display:flex;flex-wrap:wrap;gap:.4rem}.lx-tchip{display:inline-flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--text-secondary);background:var(--bg-raised);border:1px solid var(--border);border-radius:999px;padding:.32rem .75rem .32rem .4rem;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.lx-tchip:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-primary)}.lx-tchip:disabled{opacity:.5;cursor:wait}.lx-tchip-i{width:18px;height:18px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;border:1px solid var(--border-strong);color:var(--text-muted)}.lx-tchip.on{color:var(--text-primary);border-color:color-mix(in srgb,var(--brand) 55%,transparent);background:color-mix(in srgb,var(--brand) 8%,var(--bg-raised))}.lx-tchip.on .lx-tchip-i{background:var(--brand);border-color:var(--brand);color:#0b0e13}.lx-adv{width:100%;display:flex;align-items:center;gap:.4rem;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-secondary);font-size:.78rem;padding:.45rem .7rem;cursor:pointer}.lx-adv:hover{border-color:var(--border-strong);color:var(--text-primary)}.lx-adv b{color:var(--text-primary)}.lx-sched{display:flex;flex-wrap:wrap;gap:.2rem 1.4rem;align-items:flex-end;margin-top:.4rem}.lx-days{display:inline-flex;border:1px solid var(--border-strong);border-radius:3px;overflow:hidden}.lx-days button{background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-secondary);font-size:.74rem;padding:.38rem .55rem;cursor:pointer}.lx-days button:last-child{border-right:none}.lx-days button.on{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);font-weight:700}.lx-sched-sum{flex-basis:100%;display:flex;align-items:center;gap:.4rem;margin-top:.7rem;font-size:.8rem;color:var(--text-primary);background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.45rem .65rem}.lx-sched-sum svg{color:var(--brand)}.lx-soon{margin-top:1rem;border-top:1px solid var(--border);padding-top:.8rem}.lx-soon-h{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;color:var(--text-secondary)}.lx-soon-tag{font-family:var(--font-mono);font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--paused);border:1px solid color-mix(in srgb,var(--paused) 45%,transparent);border-radius:2px;padding:.05rem .35rem}.lx-soon-d{font-size:.72rem;color:var(--text-muted);margin-top:.3rem;line-height:1.45}.lx-levels{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.4rem}.lx-level{display:flex;flex-direction:column;gap:.3rem;align-items:flex-start;text-align:left;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.5rem .55rem;cursor:pointer;color:inherit;font:inherit}.lx-level:hover{border-color:var(--border-strong)}.lx-level.on{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,var(--bg-raised))}.lx-level.warn.on{border-color:var(--severity-high);background:color-mix(in srgb,var(--severity-high) 9%,var(--bg-raised))}.lx-level-n{font-size:.7rem;color:var(--brand);font-weight:800}.lx-level-t{font-size:.8rem;font-weight:700;color:var(--text-primary)}.lx-level-bar{display:block;width:100%;height:3px;border-radius:2px;background:var(--border);overflow:hidden}.lx-level-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--success),var(--severity-medium),var(--severity-high))}.lx-level-desc{margin-top:.55rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.65rem .8rem}.lx-level-desc .t{font-weight:700;font-size:.84rem;color:var(--text-primary);display:flex;align-items:center;gap:.45rem}.lx-level-desc .d{font-size:.76rem;color:var(--text-muted);margin-top:.25rem}.lx-level-desc .tag{font-family:var(--font-mono);font-size:.58rem;text-transform:uppercase;letter-spacing:.06em;padding:0 5px;border-radius:2px;border:1px solid var(--border)}.lx-level-desc .tag.rec{border-color:#2ed3a34d;color:var(--success)}.lx-level-desc .tag.warn{border-color:#ff8c424d;color:var(--severity-high)}.lx-level-meta{display:flex;gap:1.1rem;flex-wrap:wrap;margin-top:.45rem;font-size:.72rem;color:var(--text-muted)}@media (max-width: 760px){.lx-levels{grid-template-columns:repeat(3,minmax(0,1fr))}}.lx-agree{display:flex;align-items:center;gap:.6rem;margin-top:.6rem;padding:.65rem .8rem;border:1px solid var(--border-strong);border-radius:3px;cursor:pointer;font-size:.82rem;color:var(--text-secondary);transition:border-color .12s,background .12s}.lx-agree:hover{border-color:var(--brand)}.lx-agree.on{border-color:color-mix(in srgb,var(--success) 55%,transparent);background:color-mix(in srgb,var(--success) 6%,transparent);color:var(--text-primary)}.lx-sum-hd{display:flex;align-items:center;gap:.75rem;padding:.9rem 1rem;border-bottom:1px solid var(--border)}.lx-sum-ring{--p: 0%;width:46px;height:46px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:conic-gradient(var(--severity-high) var(--p),var(--bg-raised) 0);position:relative}.lx-sum-hd.ok .lx-sum-ring{background:conic-gradient(var(--success) var(--p),var(--bg-raised) 0)}.lx-sum-ring:before{content:"";position:absolute;top:5px;right:5px;bottom:5px;left:5px;border-radius:50%;background:var(--bg-surface)}.lx-sum-ring span{position:relative;font-size:.68rem;font-weight:800;color:var(--text-primary)}.lx-sum-t{font-weight:700;color:var(--text-primary);font-size:.92rem}.lx-sum-hd.ok .lx-sum-t{color:var(--success)}.lx-sum-s{font-size:.72rem;color:var(--text-muted);margin-top:.1rem}.lx-checks{display:flex;flex-direction:column;padding:.4rem .5rem;border-bottom:1px solid var(--border)}.lx-check{display:flex;align-items:center;gap:.5rem;text-align:left;background:transparent;border:none;color:var(--text-secondary);font:inherit;font-size:.78rem;padding:.35rem .5rem;border-radius:3px;cursor:pointer}.lx-check:hover{background:var(--bg-raised);color:var(--text-primary)}.lx-check-i{width:16px;text-align:center;color:var(--severity-high);font-weight:800}.lx-check.ok .lx-check-i{color:var(--success)}.lx-check.ok{color:var(--text-primary)}.lx-cta{width:100%;justify-content:center;padding:.7rem 1rem!important;font-size:.9rem!important}.lx-mbar{display:none}@media (max-width: 1280px){.lx-mbar{display:flex;align-items:center;gap:.6rem;position:sticky;bottom:0;z-index:25;grid-column:1 / -1;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;padding:.6rem .8rem;box-shadow:0 -10px 24px #00000059}.lx-mbar-t{flex:1;min-width:0;font-size:.78rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}@media (max-width: 900px){.lx-grid{grid-template-columns:minmax(0,1fr)!important}.lx-steps,.lx-val{display:none}}.lx-impact{margin-top:1rem;border-top:1px solid var(--border);padding-top:.8rem;display:flex;flex-direction:column;gap:.5rem}.lx-impact-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.4rem}.lx-impact-row .chkrow{font-size:.82rem}.lx-rec{margin-left:.4rem;font-family:var(--font-mono);font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 45%,transparent);border-radius:2px;padding:.02rem .3rem;vertical-align:middle}@media (max-width: 720px){.lx-impact-row{grid-template-columns:1fr}}.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.g-network{--g: #5aa9e6}.g-infra{--g: #b38cff}.g-servers{--g: #4fd1c5}.g-ot{--g: #f6ad55}.g-endpoints{--g: #a3b1c6}.g-peripherals{--g: #7fcf8f}.g-other{--g: var(--text-muted)}.lm-abbr{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:22px;padding:0 4px;font-family:var(--font-mono);font-size:.64rem;font-weight:800;letter-spacing:.02em;color:var(--g);border:1px solid color-mix(in srgb,var(--g) 50%,transparent);background:color-mix(in srgb,var(--g) 10%,transparent);border-radius:3px;flex-shrink:0}.lm-crit{display:inline-flex;gap:2px;align-items:flex-end;vertical-align:middle}.lm-crit i{display:block;width:3px;border-radius:1px;background:var(--border-strong)}.lm-crit i:nth-child(1){height:4px}.lm-crit i:nth-child(2){height:6px}.lm-crit i:nth-child(3){height:8px}.lm-crit i:nth-child(4){height:10px}.lm-crit i.on,.lm-crit.c-critical i.on{background:var(--text-primary)}.lm-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.lm-dash{display:inline-block;width:16px;height:0;border-top:1px dashed var(--text-muted);vertical-align:middle}.lm-dash.phy{border-top:2px dashed #5aa9e6}.lm-wrap{display:flex;flex-direction:column;gap:.6rem}.lm-gwtabs{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;padding-bottom:.6rem;border-bottom:1px solid var(--border)}.lm-gwtab{display:inline-flex;align-items:center;gap:.45rem;padding:.4rem .7rem;font-size:.8rem;font-weight:600;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border);border-radius:4px;cursor:pointer}.lm-gwtab:hover{border-color:var(--border-strong);color:var(--text-primary)}.lm-gwtab.on{border-color:var(--brand);color:var(--text-primary);background:color-mix(in srgb,var(--brand) 12%,transparent)}.lm-gwtab b{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted)}.lm-gwtab .lm-gwtab-n{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lm-gwtab-risk{font-style:normal;font-family:var(--font-mono);font-size:.68rem;font-weight:700;padding:0 .35rem;border-radius:8px;color:#fff;background:var(--severity-high)}.lm-gwtabs-hint{margin-inline-start:auto;font-size:.72rem;color:var(--text-muted)}.lm-tools{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.lm-search{flex:0 1 280px;min-width:200px}.lm-chips{display:flex;flex-wrap:wrap;gap:.35rem}.lm-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.28rem .55rem;font-size:.74rem;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;cursor:pointer}.lm-chip b{font-family:var(--font-mono);font-size:.7rem;color:var(--g)}.lm-chip:hover{border-color:var(--border-strong);color:var(--text-primary)}.lm-chip.on{border-color:var(--g);color:var(--text-primary);background:color-mix(in srgb,var(--g) 12%,transparent)}.lm-toggles{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin-inline-start:auto;font-size:.78rem;color:var(--text-secondary)}.lm-toggles label{display:inline-flex;gap:.3rem;align-items:center;cursor:pointer;white-space:nowrap}.lm-select{width:auto;max-width:240px;height:32px;padding:0 .5rem;font-size:.78rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:3px}.lm-canvas{position:relative;height:max(560px,calc(100vh - 330px));border:1px solid var(--border);border-radius:4px;background:var(--bg-base, var(--bg-surface));overflow:hidden}.lm-canvas .react-flow__edge-textbg{fill:var(--bg-surface)}.lm-minimap{background:var(--bg-surface)!important;border:1px solid var(--border)}.lm-legend{position:absolute;left:56px;bottom:10px;display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;padding:.35rem .6rem;font-size:.7rem;color:var(--text-secondary);background:color-mix(in srgb,var(--bg-surface) 92%,transparent);border:1px solid var(--border);border-radius:3px;z-index:5}.lm-legend span{display:inline-flex;gap:.3rem;align-items:center}.lm-h{opacity:0;width:6px;height:6px;min-width:0;min-height:0;border:none}.lm-gw{display:flex;gap:.6rem;align-items:center;width:260px;padding:.6rem .75rem;background:var(--bg-surface);border:1px solid var(--brand);border-radius:4px;box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent)}.lm-gw>div{display:flex;flex-direction:column;gap:.15rem;min-width:0}.lm-gw b{font-size:.82rem;color:var(--text-primary)}.lm-gw span{font-size:.68rem;color:var(--text-muted)}.lm-gw .lm-gw-warn{color:var(--severity-medium);font-size:.66rem}.lm-gw-dot{width:9px;height:9px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.lm-gw-dot.on{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 25%,transparent)}.lm-seg{width:100%;height:100%;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:5px}.lm-seg.outside{border-style:dashed}.lm-seg-head{display:flex;justify-content:space-between;align-items:center;gap:.6rem;height:52px;padding:0 .85rem;border-bottom:1px solid var(--border)}.lm-seg-head>div:first-child{display:flex;flex-direction:column;gap:.1rem;min-width:0}.lm-seg-head b{font-size:.92rem;color:var(--text-primary)}.lm-seg-head span{font-size:.7rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lm-seg-counts{display:flex;gap:.75rem}.lm-seg-counts span{display:flex;flex-direction:column;align-items:flex-end;font-family:var(--font-mono);font-size:.86rem;font-weight:700;color:var(--text-primary)}.lm-seg-counts span i{font-style:normal;font-family:var(--font-sans);font-size:.6rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.lm-seg-counts span.risk{color:var(--severity-high)}.lm-seg-counts span.new{color:var(--paused)}.lm-seg-empty{padding:.9rem;font-size:.76rem;color:var(--text-muted)}.lm-seg-norouter{position:absolute;top:56px;right:12px;font-size:.64rem;color:var(--text-muted);font-style:italic}.lm-band{width:100%;height:100%;border:1px solid var(--border);border-top:2px solid color-mix(in srgb,var(--g) 70%,transparent);border-radius:3px;background:color-mix(in srgb,var(--g) 3%,transparent)}.lm-band-head{display:flex;justify-content:space-between;align-items:center;height:24px;padding:0 .5rem;font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.lm-band-head b{font-family:var(--font-mono);color:var(--g)}.lm-dev{position:relative;display:flex;align-items:center;gap:.45rem;width:158px;height:54px;padding:0 .45rem;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:4px;cursor:pointer;transition:transform .1s,opacity .15s}.lm-dev:hover{transform:translateY(-1px);border-color:var(--text-secondary)}.lm-dev.router{box-shadow:0 0 0 3px color-mix(in srgb,#5aa9e6 18%,transparent)}.lm-dev.missing{opacity:.45}.lm-dev.hidden-dev{border-style:dashed}.lm-dev.dim{opacity:.18}.lm-dev-main{display:flex;flex-direction:column;gap:.08rem;min-width:0;flex:1}.lm-dev-main b{font-size:.74rem;color:var(--text-primary)}.lm-dev-main span{font-size:.66rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lm-dev-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.lm-new{position:absolute;top:-7px;right:6px;padding:0 4px;font-style:normal;font-size:.56rem;font-weight:800;letter-spacing:.06em;color:#0b0e13;background:var(--paused);border-radius:2px}.lr-role{display:flex;gap:.45rem;align-items:center;min-width:0}.lr-role .xcell-main{min-width:0}.lr-role .xcell-main>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lr-dhead{display:flex;gap:.6rem;align-items:center}.lr-rolebox{display:flex;flex-direction:column;gap:.6rem;padding:.8rem;margin-bottom:.8rem;border:1px solid var(--border);border-radius:4px;background:var(--bg-raised)}.lr-rolebox-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}.lr-rolebox-row>div{display:flex;flex-direction:column;gap:.2rem;align-items:flex-start}.lr-rolebox b{font-size:.9rem;color:var(--text-primary)}.lr-critv{display:inline-flex;gap:.35rem;align-items:center}.lr-why{font-size:.78rem;color:var(--text-secondary);line-height:1.4}.lr-edit{display:flex;gap:.5rem;flex-wrap:wrap}.lr-k{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.lr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem}.lr-cell{padding:.55rem .7rem}.lr-v{font-size:.86rem;font-weight:600;word-break:break-word;margin-top:2px}.lr-ann{display:flex;flex-direction:column;gap:.4rem;font-size:.82rem;padding:.6rem .7rem;border:1px solid var(--border);border-radius:3px}.lr-ann .lr-k{display:inline-block;margin-inline-end:.5rem}.lr-svcs{display:flex;flex-wrap:wrap;gap:.3rem}@media (max-width: 640px){.lr-rolebox-row{grid-template-columns:1fr}}.lh-wrap{display:flex;flex-direction:column;gap:.55rem}.lh-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.6rem;margin-bottom:.2rem}.lh-counts{display:flex;gap:1rem;font-size:.8rem}.lh-counts b{font-family:var(--font-mono);font-size:.95rem}.lh-note{font-size:.8rem;color:var(--text-secondary);padding:.6rem .8rem;border:1px solid color-mix(in srgb,var(--severity-medium) 40%,transparent);border-left-width:3px;border-radius:3px;background:color-mix(in srgb,var(--severity-medium) 6%,transparent)}.lh-card{border:1px solid var(--border);border-left-width:3px;border-radius:4px;background:var(--bg-surface)}.lh-head{display:grid;grid-template-columns:96px minmax(160px,.9fr) auto minmax(0,2fr) 20px;gap:.7rem;align-items:center;width:100%;padding:.65rem .8rem;background:none;border:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.lh-pill{justify-self:start;font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:.15rem .4rem;border:1px solid;border-radius:2px;white-space:nowrap}.lh-title{font-weight:700;font-size:.86rem;color:var(--text-primary)}.lh-gw{font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);white-space:nowrap}.lh-sum{font-size:.8rem;color:var(--text-secondary)}.lh-chev{font-family:var(--font-mono);color:var(--text-muted);text-align:center}.lh-body{display:flex;flex-direction:column;gap:.6rem;padding:0 .8rem .8rem}.lh-about{margin:0;font-size:.78rem;color:var(--text-muted);line-height:1.45}.lh-items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.25rem 1rem}.lh-items li{display:flex;gap:.5rem;align-items:baseline;font-size:.78rem;min-width:0}.lh-items li span{color:var(--text-secondary);overflow-wrap:anywhere}.lh-fix{font-size:.8rem;color:var(--text-secondary);line-height:1.45;padding:.55rem .7rem;background:var(--bg-raised);border-radius:3px}.lh-fix b{display:block;font-size:.64rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.2rem}@media (max-width: 900px){.lh-head{grid-template-columns:90px 1fr 20px}.lh-gw,.lh-sum{grid-column:2 / 3}}.ls-wrap{margin-bottom:1rem;border:1px solid color-mix(in srgb,var(--brand) 45%,transparent);border-radius:4px;background:color-mix(in srgb,var(--brand) 5%,var(--bg-surface))}.ls-banner{display:flex;gap:.8rem;align-items:center;width:100%;padding:.7rem .9rem;background:none;border:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.ls-badge{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;font-family:var(--font-mono);font-weight:800;color:var(--brand);border:1px solid var(--brand);border-radius:50%;flex-shrink:0}.ls-text{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.ls-text b{font-size:.88rem;color:var(--text-primary)}.ls-text span{font-size:.76rem;color:var(--text-secondary)}.ls-cta{font-size:.78rem;font-weight:700;color:var(--brand);white-space:nowrap}.ls-list{border-top:1px solid var(--border)}.ls-err{padding:.5rem .9rem;font-size:.8rem;color:var(--severity-critical)}.ls-row{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(0,2fr) auto;gap:.9rem;align-items:center;padding:.7rem .9rem;border-bottom:1px solid var(--border)}.ls-row:last-child{border-bottom:none}.ls-net{display:flex;flex-direction:column;gap:.15rem}.ls-net b{font-size:.9rem;color:var(--text-primary)}.ls-net span{font-size:.7rem;color:var(--text-muted)}.ls-why{display:flex;flex-wrap:wrap;gap:.3rem}.ls-reason{font-size:.72rem;padding:.12rem .45rem;border:1px solid var(--border-strong);border-radius:2px;color:var(--text-secondary)}.ls-warn{font-size:.72rem;color:var(--severity-medium)}.ls-act{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.ls-label{height:32px;width:140px;padding:0 .5rem;font-size:.78rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:3px}@media (max-width: 900px){.ls-row{grid-template-columns:1fr}.ls-act{justify-content:flex-start}}.lseg,.ltopo{display:flex;flex-direction:column;gap:.75rem}.lseg-intro{display:flex;flex-direction:column;gap:.3rem;padding:.8rem .9rem;border:1px solid var(--border);border-radius:4px;background:var(--bg-surface);font-size:.8rem;color:var(--text-secondary);line-height:1.45}.lseg-intro b{font-size:.9rem;color:var(--text-primary)}.lseg-warn{color:var(--severity-medium)}.lseg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:.6rem}.lseg-cell{display:flex;flex-direction:column;gap:.4rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:4px;background:var(--bg-surface)}.lseg-cell.same{opacity:.8;border-style:dashed}.lseg-route{display:flex;gap:.5rem;align-items:baseline;flex-wrap:wrap;font-size:.86rem;color:var(--text-primary)}.lseg-route i{font-style:normal;color:var(--text-muted)}.lseg-route em{font-style:normal;font-size:.66rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.lseg-meta{font-size:.74rem;color:var(--text-muted)}.lseg-meta b{color:var(--severity-high)}.lseg-cats{display:flex;flex-wrap:wrap;gap:.35rem}.lseg-cat{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.25rem .45rem;border:1px solid;border-radius:3px;font-size:.74rem;color:var(--text-primary)}.lseg-cat i{width:7px;height:7px;border-radius:50%}.lseg-cat b{font-family:var(--font-mono)}.lseg-cat small{flex-basis:100%;font-size:.66rem;color:var(--text-muted)}.lseg-h{display:flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.lseg-policies{display:flex;flex-direction:column;gap:.5rem;margin-top:.4rem}.lseg-pol{display:flex;flex-direction:column;gap:.45rem;padding:.65rem .8rem;border:1px solid var(--border);border-left:3px solid var(--success);border-radius:4px;background:var(--bg-surface)}.lseg-pol.bad{border-left-color:var(--severity-critical)}.lseg-pol-head{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;font-size:.84rem}.lseg-form{display:grid;grid-template-columns:minmax(200px,2fr) repeat(2,minmax(130px,1fr)) minmax(160px,1.2fr) auto;gap:.5rem;align-items:center}.lseg-form input,.lseg-form select{height:34px;padding:0 .55rem;font-size:.8rem;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;min-width:0}.ltopo-form{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.ltopo-creds{display:flex;flex-direction:column;gap:.45rem;padding:.75rem .85rem;border:1px solid var(--border);border-radius:4px;background:var(--bg-surface)}.ltopo-cred{display:flex;gap:.6rem;align-items:center;font-size:.84rem;padding:.35rem 0;border-top:1px solid var(--border)}@media (max-width: 900px){.lseg-form{grid-template-columns:1fr}}.lsc{padding:.75rem .9rem;margin-bottom:.75rem}.lsc-top{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap}.lsc-main{flex:1 1 320px;display:flex;flex-direction:column;gap:.3rem;min-width:0}.lsc-title{font-size:.95rem;font-weight:700;color:var(--text-primary)}.lsc-bars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-top:.2rem}.lsc-bar{display:flex;flex-direction:column;gap:.2rem}.lsc-track{display:block;height:5px;border-radius:3px;background:var(--border);overflow:hidden}.lsc-track i{display:block;height:100%;border-radius:3px}.lsc-bar small{font-size:.66rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lsc-act{display:flex;gap:.4rem;flex-wrap:wrap}.lsc-factors{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.6rem;margin-top:.75rem}.lsc-factor{display:flex;flex-direction:column;gap:.3rem;padding:.6rem .7rem;border:1px solid var(--border);border-radius:4px}.lsc-fh{display:flex;justify-content:space-between;gap:.5rem;font-size:.84rem}.lsc-alerts{display:flex;flex-direction:column;gap:.45rem;margin-top:.75rem;padding-top:.6rem;border-top:1px solid var(--border);font-size:.82rem}.lsc-alerts label{display:flex;gap:.45rem;align-items:center}@media (max-width: 700px){.lsc-bars{grid-template-columns:repeat(2,minmax(0,1fr))}}.lau-kpi{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .75rem}.lau-kpi b{font-size:1.35rem;font-family:var(--font-mono)}.lau-checks{display:flex;flex-wrap:wrap;gap:.3rem}.lau-check{font-size:.72rem;padding:.12rem .4rem;border:1px solid var(--border);border-radius:3px}.lau-check.ok{color:var(--success)}.lau-check.bad{color:var(--severity-high);border-color:color-mix(in srgb,var(--severity-high) 45%,transparent)}.lau-check.na{color:var(--text-muted)}.lsc-factor .xsub{white-space:normal;overflow:visible;text-overflow:clip}.rt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.85rem}.rt-card{display:flex;flex-direction:column;gap:.35rem;text-align:left;background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.9rem 1rem;color:inherit;font:inherit;transition:border-color .12s}.rt-card:hover{border-color:var(--border-strong)}.rt-card.own{border-top:2px solid var(--brand)}.rt-head{display:flex;align-items:center;gap:.55rem}.rt-ic{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;color:var(--brand);background:color-mix(in srgb,var(--brand) 12%,transparent);flex-shrink:0}.rt-title{font-weight:700;color:var(--text-primary);font-size:.92rem}.rt-desc{font-size:.8rem;color:var(--text-secondary)}.rt-meta{font-size:.7rem;color:var(--text-muted);font-family:var(--font-mono)}.rt-actions{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:auto;padding-top:.45rem}.rt-actions button{background:transparent;border:1px solid var(--border-strong);border-radius:3px;color:var(--text-secondary);font-size:.72rem;padding:.25rem .55rem;cursor:pointer}.rt-actions button:hover{color:var(--text-primary);border-color:var(--brand)}.rt-actions .rt-go{color:var(--brand);border-color:color-mix(in srgb,var(--brand) 50%,transparent);font-weight:700}.rt-actions .danger:hover{color:var(--severity-critical);border-color:var(--severity-critical)}.rt-new{align-items:center;justify-content:center;text-align:center;border-style:dashed;cursor:pointer;color:var(--text-secondary);min-height:150px}.rt-new:hover{border-color:var(--brand);color:var(--brand)}.rt-new b{color:var(--text-primary)}.rt-new span{font-size:.74rem;color:var(--text-muted);max-width:220px}.rgen{width:620px;max-width:94vw;max-height:90vh;overflow-y:auto}.rgen-label{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:1rem 0 .45rem}.rgen-tpls{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.4rem}.rgen-tpl{display:flex;flex-direction:column;gap:.15rem;text-align:left;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.55rem .65rem;cursor:pointer;color:inherit;font:inherit}.rgen-tpl:hover{border-color:var(--border-strong)}.rgen-tpl.on{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 9%,var(--bg-raised))}.rgen-tpl-n{font-weight:700;font-size:.82rem;color:var(--text-primary);display:flex;align-items:center;gap:.35rem}.rgen-tpl-d{font-size:.7rem;color:var(--text-muted)}.rtag{font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--brand);border:1px solid color-mix(in srgb,var(--brand) 50%,transparent);border-radius:2px;padding:0 .3rem}.rgen-select{width:100%}.rgen-fmts{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem}.rgen-fmt{display:flex;flex-direction:column;gap:.15rem;text-align:left;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.55rem .6rem;cursor:pointer;color:inherit;font:inherit}.rgen-fmt b{font-size:.86rem;color:var(--text-primary)}.rgen-fmt span{font-size:.66rem;color:var(--text-muted)}.rgen-fmt.on{border-color:var(--brand);background:color-mix(in srgb,var(--brand) 9%,var(--bg-raised))}.rgen-foot{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.2rem}@media (max-width: 640px){.rgen-fmts{grid-template-columns:repeat(2,1fr)}}.rb-grid{display:grid;grid-template-columns:300px minmax(300px,1fr);gap:.85rem}.rb-preview{margin-bottom:0!important;min-width:0}.rb-bottom{grid-column:1 / -1;display:grid;grid-template-columns:1fr;gap:.85rem}.rb-bottom.split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media (max-width: 1200px){.rb-bottom.split{grid-template-columns:1fr}}.rb-code{margin-bottom:0!important;min-width:0;display:flex;flex-direction:column}.rb-code .panel-head .rb-check{margin-left:auto}.rb-code-body{display:flex;flex-direction:column;gap:.55rem;flex:1}.rb-code-bar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.rb-code-btn{border:1px solid var(--border-strong)!important;font-size:.72rem;padding:.3rem .6rem}.rb-code-area{width:100%;min-height:560px;flex:1;resize:vertical;font-size:.78rem;line-height:1.5;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto;background:var(--bg-raised);color:var(--text-primary);border:1px solid var(--border-strong);border-radius:3px;padding:.6rem .7rem}.rb-vars{display:flex;flex-direction:column;gap:.35rem;font-size:.78rem;max-height:600px;overflow:auto}.rb-vars>div{display:grid;grid-template-columns:190px 1fr;gap:.6rem;padding:.3rem 0;border-bottom:1px solid var(--border)}.rb-vars code,.rb-code-body code{font-family:var(--font-mono);color:var(--brand);font-size:.74rem;word-break:break-word}.rb-vars span{color:var(--text-secondary)}.rb-code-note{line-height:1.45}@media (max-width: 1000px){.rb-grid{grid-template-columns:1fr}}.rb-col{margin-bottom:0!important}.rb-form{display:flex;flex-direction:column;gap:.6rem}.rb-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.7rem;color:var(--text-muted);font-weight:600}.rb-form input[type=text],.rb-form label>input:not([type]){width:100%}.rb-check{flex-direction:row!important;align-items:center;gap:.45rem!important;color:var(--text-secondary)!important;font-size:.78rem!important;justify-content:flex-start}.rb-check input{width:auto!important;flex:0 0 auto;margin:0}.rb-lbl{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-top:.4rem}.rb-fmts{display:inline-flex;border:1px solid var(--border-strong);border-radius:3px;overflow:hidden}.rb-fmts button{flex:1;background:transparent;border:none;border-right:1px solid var(--border);color:var(--text-secondary);font-size:.74rem;padding:.4rem;cursor:pointer}.rb-fmts button:last-child{border-right:none}.rb-fmts button.on{background:color-mix(in srgb,var(--brand) 14%,transparent);color:var(--brand);font-weight:700}.rb-cat{display:flex;flex-direction:column;gap:.3rem}.rb-cat-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;text-align:left;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.45rem .6rem;cursor:pointer;color:var(--text-muted);font:inherit}.rb-cat-item span{display:flex;flex-direction:column;min-width:0}.rb-cat-item b{font-size:.78rem;color:var(--text-primary)}.rb-cat-item small{font-size:.66rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rb-cat-item:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.rb-cat-item:disabled{opacity:.4;cursor:default}.rb-list{display:flex;flex-direction:column;gap:.45rem}.rb-item{background:var(--bg-raised);border:1px solid var(--border);border-left:2px solid var(--brand);border-radius:3px;padding:.45rem .6rem;cursor:grab}.rb-item.dragging{opacity:.4}.rb-item-head{display:flex;align-items:center;gap:.4rem}.rb-grip{color:var(--text-muted);display:inline-flex}.rb-n{font-size:.7rem;color:var(--text-muted);width:16px}.rb-t{flex:1;font-weight:600;font-size:.84rem;color:var(--text-primary)}.rb-item-head button{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-secondary);width:22px;height:22px;cursor:pointer;font-size:.7rem;display:inline-flex;align-items:center;justify-content:center}.rb-item-head button:disabled{opacity:.35;cursor:default}.rb-item-head .rb-x:hover{color:var(--severity-critical);border-color:var(--severity-critical)}.rb-opt{display:flex;align-items:center;gap:.5rem;margin:.4rem 0 0 2.6rem;font-size:.72rem;color:var(--text-muted)}.rb-opt select,.rb-opt input{font-size:.74rem;padding:.2rem .35rem;width:auto}.rb-text{display:flex;flex-direction:column;gap:.35rem;margin:.45rem 0 .1rem 2.6rem}.rb-text textarea{resize:vertical;font-family:inherit;font-size:.8rem}.rb-pv-bar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding-bottom:.6rem!important}.rb-pv-bar select{max-width:420px}.rb-pv-exp{margin-left:auto;display:inline-flex;align-items:center;gap:.3rem;font-size:.74rem;color:var(--text-muted)}.rb-pv-exp button{background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-secondary);font-size:.72rem;padding:.25rem .55rem;cursor:pointer}.rb-pv-exp button:hover:not(:disabled){color:var(--brand);border-color:var(--brand)}.rb-frame{height:720px;border-top:1px solid var(--border);background:#f4f5f7}.rb-frame iframe{width:100%;height:100%;border:0;display:block;background:#f4f5f7}.rb-base-css{margin-top:.5rem}.rb-base-css summary{cursor:pointer;font-size:.8rem;color:var(--text-secondary)}.rb-base-css pre{max-height:280px;overflow:auto;font-size:.72rem;background:var(--bg-elevated, #111);border:1px solid var(--border);padding:8px 10px;white-space:pre;margin:6px 0 0}.att-targets{margin-top:.45rem;border:1px solid var(--border);border-radius:3px;max-height:210px;overflow-y:auto;background:var(--bg-raised)}.att-targets-head{display:flex;justify-content:space-between;align-items:center;padding:.4rem .6rem;font-size:.72rem;color:var(--text-muted);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-raised)}.att-link{background:none;border:0;padding:0;color:var(--brand);font:inherit;font-size:.72rem;cursor:pointer}.att-target{display:flex;align-items:center;gap:.5rem;padding:.35rem .6rem;font-size:.8rem;cursor:pointer;border-bottom:1px solid var(--border)}.att-target:last-child{border-bottom:0}.att-target:hover{background:color-mix(in srgb,var(--brand) 5%,var(--bg-raised))}.att-target-n{margin-left:auto;font-size:.7rem;white-space:nowrap}.att-period{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.5rem}.att-period label{display:flex;flex-direction:column;gap:.25rem;font-size:.72rem;color:var(--text-muted)}.att-res{border:1px solid;border-radius:3px;padding:.6rem .75rem;font-size:.82rem;line-height:1.5}.att-res.ok{color:var(--text-primary);border-color:#2ed3a373;background:#2ed3a314}.att-res.ok b{color:var(--success)}.att-res.bad{color:var(--text-primary);border-color:#ff3d5a73;background:#ff3d5a14}.att-res.bad b{color:var(--severity-critical)}.att-res ul{margin:.3rem 0 .3rem 1.1rem;padding:0}.att-res .text-sm{color:var(--text-secondary);margin-top:.2rem}.att-done{padding-top:.4rem}.att-ok-title{display:flex;align-items:center;gap:.45rem;font-weight:700;color:var(--success);margin-top:.6rem}.att-code{font-size:1.25rem;font-weight:700;letter-spacing:.08em;color:var(--text-primary);margin-bottom:.4rem}@media (max-width: 640px){.att-period{grid-template-columns:1fr}}:root{--bg-base: #07090c;--bg-surface: #0c1016;--bg-raised: #121821;--bg-overlay: #18202b;--terminal-bg: #05070a;--brand: #ff6a13;--brand-soft: #ff9a4d;--brand-dim: rgba(255, 106, 19, .14);--coral: var(--brand);--coral-dark: #e85f0f;--accent: var(--brand);--accent-hover: #e85f0f;--accent-dim: var(--brand-dim);--bg-page: var(--bg-base);--bg-panel: var(--bg-surface);--bg-panel-raised: var(--bg-raised);--bg-input: #0f141b;--border: #1c242f;--border-strong: #2a3441;--text-primary: #eceff4;--text-secondary: #9aa3b2;--text-muted: #5f6a7a;--severity-critical: #ff3d5a;--severity-high: #ff8c42;--severity-medium: #ffc53d;--severity-low: #3fb6ff;--severity-info: #5f6a7a;--success: #2ed3a3;--danger: #ff3d5a;--warning: #ffc53d;--paused: #a78bfa;--info: #5aa9e6;--obsidian: var(--bg-base);--graphite: var(--bg-surface);--graphite-raised: var(--bg-raised);--mist: var(--bg-overlay);--paper: var(--text-primary);--font-serif: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;--radius: 3px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-page);color:var(--text-primary);font-family:var(--font-sans);font-size:14px}a{color:var(--coral);text-decoration:none}a:hover{color:var(--text-primary)}h1,h2,h3,h4{font-weight:500;margin:0 0 .5rem;font-family:var(--font-serif);color:var(--text-primary)}.mono{font-family:var(--font-mono)}.app-shell{display:flex;flex-direction:column;min-height:100vh}.navbar{height:60px;flex-shrink:0;display:flex;align-items:center;gap:.75rem;padding:0 1rem;background:var(--bg-surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:30}.nav-brand{display:flex;align-items:center;gap:.55rem;padding-right:.5rem}.nav-brand .logo{width:30px;height:30px;display:flex;align-items:center;justify-content:center;color:var(--brand)}.nav-brand .bt{line-height:1}.nav-brand .bt .n{font-weight:800;letter-spacing:.06em;font-size:.98rem;color:#fff}.nav-brand .bt .by{font-size:.6rem;color:var(--text-muted);letter-spacing:.04em}.nav-select{display:flex;align-items:center;gap:.5rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.35rem .7rem;cursor:pointer;min-width:0}.nav-select:hover{border-color:var(--border-strong)}.nav-select .lbl{font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.nav-select .val{font-size:.86rem;color:var(--text-primary);font-weight:600;white-space:nowrap}.nav-select .chev{color:var(--text-muted);margin-left:auto}.nav-sep{color:var(--border-strong)}.nav-search{flex:1;min-width:100px;display:flex;align-items:center;gap:.5rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.4rem .75rem;color:var(--text-muted)}.nav-search input{border:none;background:transparent;padding:0;color:var(--text-primary);font-size:.86rem;width:100%}.nav-search input:focus{outline:none;box-shadow:none}.nav-search .kbd{font-family:var(--font-mono);font-size:.68rem;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:5px;padding:.05rem .35rem}.nav-right{display:flex;align-items:center;gap:.7rem;margin-left:auto}.nav-status{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(255,106,19,.4);color:var(--brand);border-radius:3px;padding:.3rem .7rem;font-size:.76rem;font-weight:600;background:#ff6a130f;white-space:nowrap}.nav-status .st-sub{color:var(--text-muted);font-weight:400}.nav-user{text-align:right;line-height:1.15}.nav-user .nm{font-size:.82rem;font-weight:600;color:var(--text-primary)}.nav-user .rl{font-size:.68rem;color:var(--text-muted)}.nav-iconbtn{background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-secondary);padding:.4rem;display:flex;cursor:pointer}.nav-iconbtn:hover{border-color:var(--border-strong);color:var(--text-primary)}.shell-body{display:flex;flex:1;min-height:0}.sidebar{width:216px;flex-shrink:0;background:var(--bg-base);padding:.9rem .6rem 1rem;display:flex;flex-direction:column;gap:.2rem;border-right:1px solid var(--border);position:sticky;top:60px;align-self:flex-start;height:calc(100vh - 60px);overflow-y:auto}.nav-group-label{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);padding:.9rem .7rem .35rem;font-weight:700}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.nav-link{display:flex;align-items:center;gap:.6rem;padding:.5rem .7rem;border-radius:3px;color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer}.nav-link .ni{width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.nav-link:hover{background:var(--bg-raised);color:var(--text-primary)}.nav-link:hover .ni{color:var(--text-secondary)}.nav-link.active{background:#ff6a131f;color:var(--brand)}.nav-link.active .ni{color:var(--brand)}.nav-link.disabled{color:var(--text-muted);cursor:default}.nav-link.disabled:hover{background:transparent;color:var(--text-muted)}.nav-link .nav-badge{margin-left:auto;font-size:.66rem;font-weight:700;background:var(--bg-overlay);color:var(--text-secondary);border-radius:999px;padding:.05rem .4rem}.nav-link .nav-toggle{margin-left:auto;width:26px;height:15px;border-radius:999px;background:var(--brand);position:relative}.nav-link .nav-toggle:after{content:"";position:absolute;top:2px;right:2px;width:11px;height:11px;border-radius:50%;background:#fff}.sidebar-tenant-lock{margin-top:auto;background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.65rem .75rem;font-size:.72rem}.sidebar-tenant-lock .t{color:var(--text-secondary);font-weight:600;display:flex;align-items:center;gap:.4rem}.sidebar-tenant-lock .s{color:var(--text-muted);margin-top:.15rem}.main{flex:1;min-width:0;padding:1.5rem 1.75rem;background:var(--bg-page)}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.topbar h1{font-size:1.5rem}.topbar-actions{display:flex;align-items:center;gap:.75rem}.card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.25rem}.stat-card .stat-label{color:var(--text-secondary);font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem}.stat-card .stat-value{font-family:var(--font-serif);font-size:2rem;font-weight:500;color:var(--text-primary)}.stat-card.accent .stat-value{color:var(--coral)}table{width:100%;border-collapse:collapse;font-size:.88rem}thead th{text-align:left;color:var(--text-secondary);font-weight:500;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;padding:.5rem .75rem;border-bottom:1px solid var(--border)}tbody td{padding:.7rem .75rem;border-bottom:1px solid var(--border);color:var(--text-primary)}tbody tr:hover{background:var(--bg-panel-raised)}tbody tr.clickable{cursor:pointer}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:999px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.badge-critical{background:var(--severity-critical);color:#fff}.badge-high{background:var(--coral);color:var(--obsidian)}.badge-medium{background:#e0b34d29;color:var(--severity-medium)}.badge-low{background:#7ea3d929;color:var(--severity-low)}.badge-info{background:#ffffff0f;color:var(--severity-info)}.badge-success{background:#4ecb8229;color:var(--success)}.badge-warning{background:#e0b34d29;color:var(--warning)}.badge-danger{background:var(--severity-critical);color:#fff}.badge-neutral{background:#ffffff0f;color:var(--text-secondary)}button,.btn{font-family:inherit;font-size:.86rem;font-weight:600;padding:.55rem 1rem;border-radius:3px;border:1px solid var(--border-strong);background:var(--bg-panel);color:var(--text-primary);cursor:pointer}button:hover{border-color:var(--coral)}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--coral);border-color:var(--coral);color:var(--obsidian)}.btn-primary:hover{background:var(--coral-dark);border-color:var(--coral-dark)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn-ghost:hover{color:var(--text-primary);border-color:var(--border-strong)}input,select,textarea{font-family:inherit;font-size:.88rem;background:var(--bg-input);border:1px solid var(--border-strong);border-radius:3px;color:var(--text-primary);padding:.55rem .7rem;width:100%}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 3px var(--accent-dim)}label{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:.35rem}.field{margin-bottom:.9rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.9rem}.alert{padding:.75rem .95rem;border-radius:3px;font-size:.85rem;margin-bottom:1rem}.alert-danger{background:#d9534f24;border:1px solid rgba(217,83,79,.35);color:#f2a3a0}.alert-success{background:#4ecb821f;border:1px solid rgba(78,203,130,.35);color:#8fe0af}.alert-info{background:#7ea3d91f;border:1px solid rgba(126,163,217,.35);color:#a9c3e8}.alert-warning{background:#e6a23c1f;border:1px solid rgba(230,162,60,.4);color:#f0c27a}@keyframes cvesafe-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes cvesafe-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pulse-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;margin-right:6px;animation:cvesafe-pulse 1.2s ease-in-out infinite}.spinner{display:inline-block;width:13px;height:13px;border:2px solid rgba(255,255,255,.15);border-top-color:currentColor;border-radius:50%;margin-right:6px;animation:cvesafe-spin .7s linear infinite;vertical-align:-2px}.pipeline-progress-track{height:6px;border-radius:999px;background:#ffffff14;overflow:hidden;margin-bottom:1rem}.pipeline-progress-fill{height:100%;background:var(--accent, #ff6a13);transition:width .5s ease}.stat-card.is-running{border:1px solid rgba(255,106,19,.5)}.finding-row-new{animation:cvesafe-flash-in 1.4s ease}@keyframes cvesafe-flash-in{0%{background:#ff6a1338}to{background:transparent}}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-sm{font-size:.82rem}.flex{display:flex}.flex-between{display:flex;align-items:center;justify-content:space-between}.gap-sm{gap:.5rem}.gap-md{gap:1rem}.mt-md{margin-top:1rem}.mb-md{margin-bottom:1rem}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr 1fr;background:var(--bg-page);overflow:hidden}@media (max-width: 860px){.login-shell{grid-template-columns:1fr}.login-brand-panel{display:none}}.login-brand-panel{position:relative;z-index:2;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:3rem;background:#000;color:#d8d8da}.login-brand-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 22% 20%,rgba(255,106,19,.14),transparent 42%)}.login-brand-content{position:relative;z-index:1}.login-brand-panel .sidebar-brand{font-size:1.5rem;margin-bottom:2.5rem;color:#fff}.login-tagline{font-family:var(--font-serif);font-size:1.9rem;font-weight:500;line-height:1.32;max-width:460px;margin-bottom:1.25rem;color:#fff}.login-tagline .accent-text{color:var(--coral)}.login-subtext{color:#a3a3a8;max-width:420px;line-height:1.6;margin-bottom:2.25rem}.login-feature-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem}.login-feature-list li{display:flex;align-items:center;gap:.65rem;color:#c2c2c6;font-size:.92rem}.login-feature-list .feature-icon{width:22px;height:22px;flex-shrink:0;border-radius:6px;background:#ff6a132e;color:var(--coral);display:flex;align-items:center;justify-content:center}.login-footer-note{position:relative;z-index:1;color:#75757a;font-size:.78rem;display:flex;align-items:center;gap:.5rem}.login-form-panel{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg-page)}.login-card{width:100%;max-width:380px}.login-card .mobile-brand{display:none}@media (max-width: 860px){.login-card .mobile-brand{display:flex;justify-content:center;margin-bottom:2rem;font-size:1.3rem;color:var(--text-primary)}}.login-card h2{font-size:1.4rem;margin-bottom:.3rem;color:var(--text-primary)}.login-card .login-hint{color:var(--text-secondary);font-size:.88rem;margin-bottom:1.75rem}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:var(--text-muted)}.input-with-icon input{padding-left:2.3rem}.login-forgot{display:flex;justify-content:flex-end;margin:-.4rem 0 1.1rem}.login-forgot a{font-size:.82rem;color:var(--text-secondary)}.login-forgot a:hover{color:var(--coral)}.auth-back{margin-top:1.2rem;text-align:center}.auth-back a,.auth-back button{font-size:.82rem;color:var(--text-secondary);background:none;border:0;cursor:pointer;padding:0}.auth-back a:hover,.auth-back button:hover{color:var(--coral)}.auth-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.8rem}.auth-steps li{display:flex;align-items:center;gap:.65rem;color:#75757a;font-size:.92rem}.auth-steps li span{width:24px;height:24px;flex-shrink:0;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;border:1px solid #3a3a3f;color:#75757a}.auth-steps li.on{color:#e8e8ea}.auth-steps li.on span{border-color:var(--coral);color:var(--coral);background:#ff6a131f}.auth-steps li.done{color:#c2c2c6}.auth-steps li.done span{border-color:transparent;background:#ff6a132e;color:var(--coral)}.auth-who{display:flex;align-items:center;gap:.6rem;padding:.6rem .75rem;margin-bottom:1.1rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated, var(--bg-card));font-size:.85rem;color:var(--text-secondary)}.auth-who b{color:var(--text-primary);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-logo img{max-height:44px;max-width:220px;object-fit:contain;display:block}.mobile-brand.auth-logo img{max-height:32px}.auth-powered{margin-top:1.4rem;text-align:center;font-size:.72rem;color:var(--text-muted);letter-spacing:.04em}.login-security-note{margin-top:1.5rem;display:flex;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.78rem}.section-numbered{display:flex;gap:1rem;margin-bottom:1.75rem}.section-numbered .section-number{font-family:var(--font-serif);font-size:1.6rem;color:var(--border-strong);line-height:1;flex-shrink:0;width:2rem}.section-numbered .section-body{flex:1;min-width:0}.section-numbered h3{margin-bottom:.3rem;font-size:1.05rem}.section-numbered .section-desc{color:var(--text-secondary);font-size:.85rem;margin-bottom:1rem}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.85rem}.choice-card{position:relative;text-align:left;border:1.5px solid var(--border);background:var(--bg-panel);border-radius:var(--radius);padding:1rem 1.1rem;cursor:pointer;display:flex;flex-direction:column;gap:.3rem;font-weight:400}.choice-card:hover{border-color:var(--border-strong)}.choice-card.selected{border-color:var(--coral);background:var(--accent-dim)}.choice-card .choice-title{font-weight:600;font-size:.95rem;color:var(--text-primary);display:flex;align-items:center;justify-content:space-between}.choice-card .choice-desc{color:var(--text-secondary);font-size:.8rem;line-height:1.45}.choice-card .choice-check{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--border-strong);flex-shrink:0;display:flex;align-items:center;justify-content:center}.choice-card.selected .choice-check{border-color:var(--coral);background:var(--coral);color:var(--obsidian)}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:999px;padding:3px;background:var(--bg-input);gap:2px}.segmented button,.segmented a{border:none;background:transparent;border-radius:999px;padding:.4rem .9rem;font-size:.82rem;font-weight:600;color:var(--text-secondary);text-decoration:none;cursor:pointer}.segmented button.active,.segmented a.active{background:var(--graphite-raised);color:var(--text-primary);box-shadow:0 1px 2px #0000004d}.summary-row{display:flex;justify-content:space-between;padding:.55rem 0;border-bottom:1px solid var(--border);font-size:.88rem}.summary-row:last-child{border-bottom:none}.summary-row .summary-label{color:var(--text-secondary)}.summary-row .summary-value{font-weight:600;color:var(--text-primary)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;padding-bottom:1.1rem;border-bottom:1px solid var(--border)}.page-header .page-title{font-size:1.5rem;margin-bottom:.15rem}.page-header .page-subtitle{color:var(--text-secondary);font-size:.88rem;font-family:var(--font-sans)}.page-header .page-header-actions{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.breadcrumb{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-muted);margin-bottom:.6rem}.breadcrumb a{color:var(--text-secondary)}.breadcrumb a:hover{color:var(--coral)}.breadcrumb .sep{color:var(--border-strong)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.9rem;margin-bottom:1.25rem}.kpi-card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--border-strong)}.kpi-card.accent:before{background:var(--coral)}.kpi-card.critical:before{background:var(--severity-critical)}.kpi-card .kpi-label{color:var(--text-secondary);font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.55rem;display:flex;align-items:center;gap:.4rem}.kpi-card .kpi-value{font-family:var(--font-serif);font-size:2.1rem;font-weight:500;line-height:1;color:var(--text-primary)}.kpi-card.accent .kpi-value{color:var(--coral)}.kpi-card.critical .kpi-value{color:var(--severity-critical)}.kpi-card .kpi-foot{margin-top:.5rem;font-size:.76rem;color:var(--text-muted)}.kpi-delta{font-weight:600}.kpi-delta.up{color:var(--severity-critical)}.kpi-delta.down{color:var(--success)}.command-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:1rem;align-items:start}@media (max-width: 1080px){.command-grid{grid-template-columns:1fr}}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.15rem;border-bottom:1px solid var(--border)}.panel-head h3{margin:0;font-size:1rem}.panel-head .panel-head-meta{font-size:.78rem;color:var(--text-muted)}.panel-body{padding:1.15rem}.panel-body.flush{padding:0}.panel .panel-body.flush table thead th,.panel .panel-body.flush table tbody td{padding-left:1.15rem}.sev-dist-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--bg-input);margin-bottom:1.1rem}.sev-dist-bar .seg{height:100%}.seg-critical{background:var(--severity-critical)}.seg-high{background:var(--coral)}.seg-medium{background:var(--severity-medium)}.seg-low{background:var(--severity-low)}.seg-info{background:var(--severity-info)}.sev-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.sev-legend-item{display:flex;align-items:center;gap:.55rem}.sev-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.sev-dot.critical{background:var(--severity-critical)}.sev-dot.high{background:var(--coral)}.sev-dot.medium{background:var(--severity-medium)}.sev-dot.low{background:var(--severity-low)}.sev-dot.info{background:var(--severity-info)}.sev-legend-item .sev-count{font-family:var(--font-serif);font-size:1.15rem;font-weight:500;color:var(--text-primary);line-height:1}.sev-legend-item .sev-name{font-size:.72rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.sev-chips{display:inline-flex;gap:.3rem}.sev-chip{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;font-weight:600;font-family:var(--font-mono);padding:.1rem .4rem;border-radius:5px;background:var(--bg-input);color:var(--text-secondary)}.sev-chip.has-critical{color:var(--severity-critical)}.sev-chip.has-high{color:var(--coral)}.empty-inline{color:var(--text-muted);font-size:.84rem;padding:2rem 1.15rem;text-align:center}.kpi-card .kpi-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.kpi-card .kpi-spark{margin-top:.2rem;opacity:.9}.demo-flag{display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border:1px dashed var(--border-strong);border-radius:999px;padding:.2rem .6rem}.chart-row{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:1rem;margin-bottom:1rem;align-items:stretch}@media (max-width: 1200px){.chart-row{grid-template-columns:1fr 1fr}}@media (max-width: 720px){.chart-row{grid-template-columns:1fr}}.donut-wrap{display:flex;align-items:center;gap:1.1rem}.donut-legend{display:flex;flex-direction:column;gap:.5rem;flex:1}.donut-legend .row{display:flex;align-items:center;gap:.5rem;font-size:.82rem}.donut-legend .row .val{margin-left:auto;font-family:var(--font-mono);color:var(--text-secondary)}.risk-pill{display:inline-flex;align-items:baseline;gap:.2rem;font-family:var(--font-serif);font-weight:500}.risk-pill .n{font-size:1.05rem}.risk-pill.high .n{color:var(--severity-critical)}.risk-pill.med .n{color:var(--coral)}.risk-pill.low .n{color:var(--success)}.risk-pill .max{font-size:.7rem;color:var(--text-muted)}.feed{display:flex;flex-direction:column}.feed-item{display:flex;gap:.7rem;padding:.7rem 1.15rem;border-bottom:1px solid var(--border)}.feed-item:last-child{border-bottom:none}.feed-dot{width:8px;height:8px;border-radius:50%;margin-top:.45rem;flex-shrink:0}.feed-item .feed-client{font-weight:600;font-size:.84rem}.feed-item .feed-text{font-size:.82rem;color:var(--text-secondary)}.feed-item .feed-time{font-size:.72rem;color:var(--text-muted);margin-top:.15rem}.heatmap{display:flex;flex-direction:column;gap:3px}.heatmap-row{display:flex;gap:3px;align-items:stretch}.heatmap-rowlabel{width:130px;flex-shrink:0;font-size:.78rem;color:var(--text-secondary);display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heatmap-collabel{flex:1;text-align:center;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.heatmap-cell{flex:1;min-height:30px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-family:var(--font-mono);font-weight:600}.heatmap-head .heatmap-cell{min-height:0}.client-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.4rem}.client-title-row{display:flex;align-items:center;gap:.9rem}.client-avatar{width:46px;height:46px;border-radius:3px;background:var(--graphite-raised);border:1px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-size:1.25rem;color:var(--coral);flex-shrink:0}.client-head .client-name{font-size:1.5rem;font-family:var(--font-serif);font-weight:500}.client-head .client-meta{font-size:.85rem;color:var(--text-secondary)}.action-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.action-tile{text-align:left;border:1px solid var(--border);background:var(--bg-panel);border-radius:var(--radius);padding:1.1rem 1.15rem;cursor:pointer;transition:border-color .15s,transform .15s,background .15s;display:flex;flex-direction:column;gap:.55rem;position:relative}.action-tile:hover{border-color:var(--coral);background:var(--graphite-raised);transform:translateY(-2px)}.action-tile .at-icon{width:40px;height:40px;border-radius:3px;background:var(--accent-dim);color:var(--coral);display:flex;align-items:center;justify-content:center}.action-tile .at-title{font-weight:600;font-size:.98rem;color:var(--text-primary)}.action-tile .at-desc{font-size:.8rem;color:var(--text-secondary);line-height:1.45}.action-tile .at-arrow{position:absolute;top:1.1rem;right:1.1rem;color:var(--text-muted);transition:color .15s,transform .15s}.action-tile:hover .at-arrow{color:var(--coral);transform:translate(3px)}.action-tile.soon{opacity:.55;cursor:default}.action-tile.soon:hover{border-color:var(--border);background:var(--bg-panel);transform:none}.action-tile .at-badge{font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:999px;padding:.1rem .45rem;align-self:flex-start}.section-label{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);margin:1.6rem 0 .7rem;font-family:var(--font-sans);font-weight:600}.stepper{display:flex;gap:.4rem;margin-bottom:1.6rem;flex-wrap:wrap}.stepper .step{display:flex;align-items:center;gap:.5rem;padding:.4rem .9rem .4rem .4rem;border-radius:999px;border:1px solid var(--border);color:var(--text-muted);font-size:.82rem;background:var(--bg-panel)}.stepper .step .num{width:22px;height:22px;border-radius:50%;background:var(--bg-input);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:.74rem;font-weight:700;flex-shrink:0}.stepper .step.active{border-color:var(--coral);color:var(--text-primary)}.stepper .step.active .num{background:var(--coral);color:var(--obsidian)}.stepper .step.done{color:var(--text-secondary)}.stepper .step.done .num{background:var(--success);color:var(--obsidian)}.wizard-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border)}.gateway-card{border:1px solid var(--border-strong);border-radius:var(--radius);padding:1.2rem;background:var(--graphite-raised)}.status-chip{display:inline-flex;align-items:center;gap:.45rem;font-size:.8rem;font-weight:600;padding:.3rem .75rem;border-radius:999px}.status-chip.waiting{background:#e0b34d24;color:var(--warning)}.status-chip.online{background:#4ecb8229;color:var(--success)}.status-chip.offline{background:#ffffff0f;color:var(--text-muted)}.code-block{font-family:var(--font-mono);font-size:.82rem;background:#000;border:1px solid var(--border);border-radius:3px;padding:.85rem 1rem;color:#c8e6d4;overflow-x:auto;white-space:pre;line-height:1.5}.target-item{display:flex;align-items:center;gap:.7rem;padding:.65rem .85rem;border:1px solid var(--border);border-radius:3px;background:var(--bg-panel);margin-bottom:.5rem}.target-item .ti-type{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);background:var(--bg-input);border-radius:5px;padding:.15rem .5rem;flex-shrink:0}.target-item .ti-val{font-family:var(--font-mono);flex:1}.target-item .ti-rm{color:var(--text-muted);cursor:pointer;background:none;border:none;padding:.2rem .4rem}.target-item .ti-rm:hover{color:var(--severity-critical)}.level-card .choice-title{justify-content:flex-start;gap:.5rem}.level-meta{display:flex;gap:.75rem;margin-top:.5rem;font-size:.74rem;color:var(--text-muted)}.level-meta .lm{display:flex;align-items:center;gap:.3rem}.check-row{display:flex;align-items:center;gap:.55rem;padding:.45rem 0;font-size:.86rem}.check-row input{width:auto}.section-desc{color:var(--text-secondary);font-size:.85rem;margin-bottom:1rem}.command-center{margin:-1.5rem -1.75rem;padding:1.6rem 2rem 2.4rem;min-height:100vh;background:radial-gradient(900px 520px at 28% 10%,rgba(255,106,19,.08),transparent 60%),radial-gradient(1000px 620px at 80% 26%,rgba(255,106,19,.035),transparent 55%),linear-gradient(160deg,#17171a,#0c0c0f 55%,#060607)}.cc-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.4rem}.cc-title{font-size:1.6rem;font-family:var(--font-serif);font-weight:500;color:#fff}.cc-sub{color:#8b93a7;font-size:.86rem}.cc-status{display:inline-flex;align-items:center;gap:.5rem;background:#ff6a131f;border:1px solid rgba(255,106,19,.35);color:var(--coral);border-radius:999px;padding:.4rem .9rem;font-size:.82rem;font-weight:600}.cc-sonar-wrap canvas{cursor:pointer}.cc-tooltip{position:absolute;transform:translate(-50%,calc(-100% - 12px));background:#0a0a0c;border:1px solid var(--border-strong);border-radius:3px;padding:.5rem .7rem;pointer-events:none;z-index:6;white-space:nowrap;box-shadow:0 8px 22px #0000008c}.cc-tooltip .tt-sev{font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.cc-tooltip .tt-title{color:#fff;font-size:.84rem}.cc-tooltip .tt-cat{color:#8b93a7;font-size:.74rem}.cc-grid{display:grid;grid-template-columns:1fr auto 1.15fr;gap:1.5rem;align-items:center}@media (max-width: 1200px){.cc-grid{grid-template-columns:1fr;justify-items:center}}.cc-sonar-wrap{position:relative;display:flex;flex-direction:column;align-items:center}.cc-sonar-caption{margin-top:.6rem;font-size:.74rem;color:#6f7994;letter-spacing:.04em;text-transform:uppercase}.cc-streams{display:flex;flex-direction:column;gap:1.1rem}.cc-stream .cc-stream-val{font-family:var(--font-serif);font-size:1.9rem;color:#fff;line-height:1}.cc-stream .cc-stream-lbl{color:#8b93a7;font-size:.8rem;margin-top:.15rem}.cc-threats{margin-top:1.4rem;display:flex;flex-direction:column;gap:.6rem}.cc-threat{display:flex;gap:.6rem;padding:.6rem .8rem;border:1px solid rgba(255,90,90,.25);background:#ff5a5a0f;border-radius:3px}.cc-threat.high{border-color:#ff6a134d;background:#ff6a130f}.cc-threat .cc-threat-n{width:20px;height:20px;border-radius:50%;background:#ff5a5a;color:#0a1122;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cc-threat.high .cc-threat-n{background:#ff6a13}.cc-threat .cc-threat-title{font-weight:600;font-size:.86rem;color:#fff}.cc-threat .cc-threat-sub{font-size:.76rem;color:#8b93a7}.cc-zone-title{color:#8b93a7;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1rem}.cc-zone-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.5rem}.cc-asset .cc-asset-head{display:flex;align-items:baseline;gap:.4rem;margin-bottom:.35rem}.cc-asset .cc-asset-n{font-family:var(--font-serif);font-size:1.25rem;color:#fff}.cc-asset .cc-asset-lbl{font-size:.78rem;color:#8b93a7}.cc-blocks{display:flex;flex-wrap:wrap;gap:3px}.cc-block{width:9px;height:9px;border-radius:2px}.cc-block.ok{background:#2f9e5b}.cc-block.live{background:var(--coral)}.cc-block.exp{background:#ff5a5a}.cc-legend{display:flex;gap:1.1rem;margin-top:1.2rem;font-size:.74rem;color:#8b93a7;flex-wrap:wrap}.cc-legend .li{display:flex;align-items:center;gap:.4rem}.cc-legend .sw{width:9px;height:9px;border-radius:2px}.cc-inventory{margin-top:2rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:3rem;justify-content:center;flex-wrap:wrap}.cc-inv-item{text-align:center}.cc-inv-item .n{font-family:var(--font-serif);font-size:2rem;color:#fff;line-height:1}.cc-inv-item .n.warn{color:#ffb454}.cc-inv-item .n.crit{color:#ff5a5a}.cc-inv-item .l{font-size:.74rem;color:#8b93a7;text-transform:uppercase;letter-spacing:.05em;margin-top:.4rem}button,.btn{border-radius:3px}.btn-primary{color:#fff}a.btn-primary,a.btn-ghost,a.btn{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;font-size:.86rem;padding:.5rem .95rem;border-radius:3px;border:1px solid transparent;cursor:pointer;text-decoration:none}a.btn-primary{background:var(--brand);border-color:var(--brand);color:#fff}a.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.cc-node{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid var(--border-strong);border-radius:3px;background:var(--bg-raised);cursor:pointer;font-size:.76rem;font-family:var(--font-mono);max-width:240px}.cc-node:hover{background:var(--bg-overlay)}.cc-node-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.cc-node-host{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.cc-node-n{font-weight:700;margin-left:2px}.cc-node.scanning{animation:cc-pulse 1.4s ease-in-out infinite}@keyframes cc-pulse{0%,to{box-shadow:0 0 #ff6a1300;border-color:var(--brand)}50%{box-shadow:0 0 0 3px #ff6a132e;border-color:var(--brand)}}.cc-op{display:flex;align-items:center;gap:10px;padding:.6rem .9rem;border-bottom:1px solid var(--border);cursor:pointer}.cc-op:last-child{border-bottom:none}.cc-op:hover{background:var(--bg-raised)}.cc-op-t{font-size:.84rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cc-op-s{font-size:.74rem;color:var(--text-muted)}.cc-op-tag{font-size:.72rem;font-weight:600;white-space:nowrap}:root[data-brand-theme=midnight]{--bg-base: #020305;--bg-surface: #07090d;--bg-raised: #0c1016;--bg-overlay: #121822;--bg-input: #090c11;--border: #161d27;--border-strong: #232c38;--terminal-bg: #000000;--text-primary: #f4f6fa;--text-secondary: #a9b2c1}:root[data-brand-theme=slate]{--bg-base: #11151b;--bg-surface: #171c24;--bg-raised: #1e2530;--bg-overlay: #252d3a;--bg-input: #1a2029;--border: #2a3340;--border-strong: #37414f;--terminal-bg: #0d1116;--text-primary: #e6e9ee;--text-secondary: #a1a9b6;--text-muted: #6c7686}.validate-aside{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.7rem}.validate-aside li{color:#c2c2c6;font-size:.9rem;padding-left:1.2rem;position:relative}.validate-aside li:before{content:"✓";position:absolute;left:0;color:var(--coral)}.validate-result{border-radius:8px;padding:14px 16px;font-size:.88rem;line-height:1.5;border:1px solid}.validate-result.ok{border-color:#4ecb8273;background:#4ecb8214}.validate-result.bad{border-color:#ff3d5a73;background:#ff3d5a14}.validate-title{font-weight:700;font-size:1rem;margin-bottom:4px}.validate-result.ok .validate-title{color:var(--success)}.validate-result.bad .validate-title{color:var(--danger)}.validate-result dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:10px 0 0}.validate-result dt{color:var(--text-secondary)}.validate-result dd{margin:0;font-weight:600}.validate-integrity{margin-top:10px;padding-top:8px;border-top:1px solid var(--border)}.validate-integrity.ok{color:var(--success)}.validate-integrity.bad{color:#f5b14c}.login-validate-box{margin-top:1.4rem;padding-top:1.1rem;border-top:1px solid var(--border)}.lvb-head{font-weight:700;font-size:.9rem}.lvb-sub{color:var(--text-secondary);font-size:.78rem;margin:2px 0 8px}.lvb-form{display:flex;gap:8px}.lvb-form input{flex:1;min-width:0;letter-spacing:.06em}.lvb-form button{border:1px solid var(--border);white-space:nowrap}.lvb-res{margin-top:8px;font-size:.8rem;line-height:1.45;border-radius:6px;padding:8px 10px;border:1px solid}.lvb-res.ok{color:var(--success);border-color:#4ecb8273;background:#4ecb8214}.lvb-res.bad{color:var(--danger);border-color:#ff3d5a73;background:#ff3d5a14}.lvb-more{margin-top:3px}.lvb-more a{color:var(--text-secondary);font-size:.76rem}.lvb-more a:hover{color:var(--coral)}.ph{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.3rem}.ph-title{display:flex;align-items:center;gap:.6rem}.ph-title .ph-ic{color:var(--brand);display:flex}.ph-title h1{font-size:1.45rem;margin:0}.ph-sub{color:var(--text-secondary);font-size:.85rem;margin-top:.15rem}.ph-actions{display:flex;gap:.6rem;flex-shrink:0}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;margin-bottom:1.1rem;align-items:stretch}.kpi2{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;position:relative;display:flex;flex-direction:column;min-height:104px}.kpi2.bl{border-left:3px solid var(--border-strong)}.kpi2.bl-crit{border-left-color:var(--severity-critical)}.kpi2.bl-brand{border-left-color:var(--brand)}.kpi2.bl-ok{border-left-color:var(--success)}.kpi2 .k-ic{color:var(--text-muted);margin-bottom:.5rem;display:flex}.kpi2 .k-lbl{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.kpi2 .k-val{font-size:1.55rem;font-weight:700;color:var(--text-primary);line-height:1.15;margin-top:.2rem}.kpi2 .k-val.crit{color:var(--severity-critical)}.kpi2 .k-val.brand{color:var(--brand)}.kpi2 .k-val.ok{color:var(--success)}.kpi2 .k-foot{font-size:.74rem;color:var(--text-muted);margin-top:.3rem}.sevchip{display:inline-flex;align-items:center;gap:.3rem;font-size:.74rem;font-weight:700;font-family:var(--font-mono);padding:.1rem .45rem;border-radius:6px;background:var(--bg-raised)}.sevchip .d{width:6px;height:6px;border-radius:50%}.sevchip.crit{color:var(--severity-critical)}.sevchip.crit .d{background:var(--severity-critical)}.sevchip.high{color:var(--severity-high)}.sevchip.high .d{background:var(--severity-high)}.sevchip.med{color:var(--severity-medium)}.sevchip.med .d{background:var(--severity-medium)}.sevchip.low{color:var(--severity-low)}.sevchip.low .d{background:var(--severity-low)}.sevpill{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:700;padding:.18rem .55rem;border-radius:6px}.sevpill .d{width:6px;height:6px;border-radius:50%}.sevpill.crit{color:var(--severity-critical);background:#ff3d5a1f}.sevpill.crit .d{background:var(--severity-critical)}.sevpill.high{color:var(--severity-high);background:#ff8c421f}.sevpill.high .d{background:var(--severity-high)}.sevpill.med{color:var(--severity-medium);background:#ffc53d1f}.sevpill.med .d{background:var(--severity-medium)}.sevpill.low{color:var(--severity-low);background:#3fb6ff1f}.sevpill.low .d{background:var(--severity-low)}.sevpill.info{color:var(--text-secondary);background:#a0a0aa1a}.sevpill.info .d{background:var(--text-muted)}.sevchip.info{color:var(--text-secondary)}.sevchip.info .d{background:var(--text-muted)}.spill{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;font-weight:600;padding:.2rem .55rem;border-radius:6px;white-space:nowrap}.spill .d{width:6px;height:6px;border-radius:50%}.spill.active{color:var(--brand);background:#ff6a131f}.spill.active .d{background:var(--brand)}.spill.ok{color:var(--success);background:#2ed3a31f}.spill.ok .d{background:var(--success)}.spill.req{color:var(--severity-critical);background:#ff3d5a1f}.spill.req .d{background:var(--severity-critical)}.spill.sched{color:var(--paused);background:#a78bfa24}.spill.sched .d{background:var(--paused)}.spill.fix{color:var(--severity-high);background:#ff8c421f}.spill.fix .d{background:var(--severity-high)}.spill.risk{color:var(--paused);background:#a78bfa24}.spill.risk .d{background:var(--paused)}.spill.pub{color:var(--brand);background:#ff6a131a}.spill.pub .d{background:var(--brand)}.spill.priv{color:var(--success);background:#2ed3a31a}.spill.priv .d{background:var(--success)}.spill.neutral{color:var(--text-secondary);background:var(--bg-raised)}.spill.neutral .d{background:var(--text-muted)}.toolbar{display:flex;align-items:center;gap:.6rem;padding:.8rem 0}.toolbar .tb-search{flex:0 0 300px;display:flex;align-items:center;gap:.5rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.45rem .7rem;color:var(--text-muted)}.toolbar .tb-search input{border:none;background:transparent;padding:0;color:var(--text-primary);font-size:.85rem;width:100%}.toolbar .tb-search input:focus{outline:none;box-shadow:none}.fsel{display:inline-flex;align-items:center;gap:.4rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.45rem .7rem;font-size:.82rem;color:var(--text-secondary);cursor:pointer}.fsel:hover{border-color:var(--border-strong)}.toolbar .tb-count{margin-left:auto;font-size:.78rem;color:var(--text-muted)}.dtable{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.dthead,.dtrow{display:grid;align-items:center;gap:1rem;padding:.85rem 1.1rem}.dthead{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border);font-weight:700}.dtrow{border-bottom:1px solid var(--border);cursor:pointer;position:relative}.dtrow:last-child{border-bottom:none}.dtrow:hover{background:var(--bg-raised)}.dtrow.sev-l{border-left:3px solid transparent}.dtrow.sev-l.crit{border-left-color:var(--severity-critical)}.dtrow.sev-l.high{border-left-color:var(--severity-high)}.dtrow.sev-l.med{border-left-color:var(--severity-medium)}.dtrow.sev-l.low{border-left-color:var(--severity-low)}.dt-chev{color:var(--text-muted);justify-self:end}.dt-main{font-weight:700;color:var(--text-primary)}.dt-sub{font-size:.74rem;color:var(--text-muted);margin-top:.1rem}.dt-ava{width:36px;height:36px;border-radius:9px;background:var(--bg-raised);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--brand);flex-shrink:0}.chip-iso{display:inline-flex;align-items:center;gap:.3rem;font-size:.66rem;color:var(--success);background:#2ed3a31a;border-radius:5px;padding:.08rem .35rem}.chip-iso .d{width:5px;height:5px;border-radius:50%;background:var(--success)}.riskbar{min-width:90px}.riskbar .rb-n{font-size:.86rem;font-weight:700;font-family:var(--font-mono)}.riskbar .rb-t{height:5px;border-radius:999px;background:var(--bg-raised);overflow:hidden;margin-top:3px}.riskbar .rb-f{height:100%}.cvss-big{font-size:1.1rem;font-weight:800;font-family:var(--font-mono)}.sevtabs{display:grid;grid-template-columns:repeat(5,1fr);gap:.7rem;margin-bottom:1rem}.sevtab{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem;cursor:pointer;position:relative}.sevtab.active{border-color:var(--brand)}.sevtab .st-l{font-size:.72rem;color:var(--text-secondary);display:flex;align-items:center;gap:.35rem}.sevtab .st-l .d{width:7px;height:7px;border-radius:50%}.sevtab .st-v{font-size:1.7rem;font-weight:800;margin-top:.25rem}.sevtab.all .st-v{color:var(--text-primary)}.sevtab.crit .st-v{color:var(--severity-critical)}.sevtab.crit .st-l .d{background:var(--severity-critical)}.sevtab.high .st-v{color:var(--severity-high)}.sevtab.high .st-l .d{background:var(--severity-high)}.sevtab.med .st-v{color:var(--severity-medium)}.sevtab.med .st-l .d{background:var(--severity-medium)}.sevtab.low .st-v{color:var(--severity-low)}.sevtab.low .st-l .d{background:var(--severity-low)}.det-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:1rem;align-items:start}@media (max-width: 1080px){.det-grid{grid-template-columns:1fr}}.det-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.6rem}.det-metric .m-l{font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.det-metric .m-v{font-weight:700;color:var(--text-primary);margin-top:.15rem}.kv{display:flex;justify-content:space-between;padding:.4rem 0;border-bottom:1px solid var(--border);font-size:.84rem}.kv:last-child{border-bottom:none}.kv .k{color:var(--text-secondary)}.kv .v{color:var(--text-primary);font-weight:600}.rem-step{display:flex;gap:.7rem;padding:.6rem 0;border-bottom:1px solid var(--border)}.rem-step:last-child{border-bottom:none}.rem-step .n{width:22px;height:22px;border-radius:50%;background:var(--bg-raised);border:1px solid var(--border-strong);color:var(--brand);font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rem-step .t{font-size:.86rem;color:var(--text-primary)}.time-chip{font-size:.64rem;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:999px;padding:.05rem .4rem;margin-top:.25rem;display:inline-block}.evidence{background:var(--terminal-bg);border:1px solid var(--border);border-radius:3px;padding:1rem;font-family:var(--font-mono);font-size:.82rem;line-height:1.6;overflow-x:auto}.evidence .e-cmd{color:var(--text-primary)}.evidence .e-cmd .pr{color:var(--brand)}.evidence .e-muted{color:var(--text-muted)}.evidence .e-add{color:var(--severity-high)}.evidence .e-ok{color:var(--success)}.chip-ro{font-size:.66rem;color:var(--success);background:#2ed3a31a;border-radius:999px;padding:.1rem .5rem}.prog{height:6px;border-radius:999px;background:var(--bg-raised);overflow:hidden}.prog .f{height:100%}.cardgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:.9rem}.gcard{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem}.gcard .g-head{display:flex;align-items:flex-start;gap:.7rem}.gcard .g-ic{width:40px;height:40px;border-radius:3px;background:var(--bg-raised);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--brand);flex-shrink:0}.gcard .g-name{font-family:var(--font-mono);font-weight:700;color:var(--text-primary)}.gcard .g-menu{margin-left:auto;color:var(--text-muted);cursor:pointer}.gstat{font-size:.78rem;font-weight:600;display:inline-flex;align-items:center;gap:.35rem;margin-top:.2rem}.gstat .d{width:7px;height:7px;border-radius:50%}.gstat.online{color:var(--success)}.gstat.online .d{background:var(--success)}.gstat.degr{color:var(--severity-medium)}.gstat.degr .d{background:var(--severity-medium)}.gstat.off{color:var(--severity-critical)}.gstat.off .d{background:var(--severity-critical)}.gstat.wait{color:var(--paused)}.gstat.wait .d{background:var(--paused)}.gcard .g-div{border-top:1px solid var(--border);margin:.9rem 0}.gcard .g-client{display:flex;align-items:center;gap:.4rem;font-weight:600;margin-bottom:.6rem}.kvr{display:flex;justify-content:space-between;font-size:.82rem;padding:.2rem 0}.kvr .k{color:var(--text-muted)}.kvr .v{font-family:var(--font-mono);color:var(--text-secondary)}.gcard .g-foot{display:flex;justify-content:space-between;align-items:center;margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--border);font-size:.76rem}.gcard .g-foot .st{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-secondary)}.gcard .g-foot .st .d{width:6px;height:6px;border-radius:50%;background:var(--brand)}.gcard .g-foot .tm{color:var(--text-muted)}.mods{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}.mod{font-size:.72rem;color:var(--text-secondary);border:1px solid var(--border-strong);border-radius:6px;padding:.18rem .5rem;display:inline-flex;align-items:center;gap:.3rem}.mod .ck{color:var(--brand)}.chip-default{font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--brand);background:#ff6a131f;border-radius:5px;padding:.1rem .4rem}.dur{font-size:.74rem;color:var(--text-muted);display:inline-flex;align-items:center;gap:.3rem;margin-top:.2rem}.rpill{font-size:.72rem;font-weight:700;padding:.15rem .5rem;border-radius:6px;display:inline-flex;align-items:center;gap:.3rem}.rpill .d{width:6px;height:6px;border-radius:50%}.rpill.crit{color:var(--severity-critical);background:#ff3d5a1f}.rpill.crit .d{background:var(--severity-critical)}.rpill.alto{color:var(--severity-high);background:#ff8c421f}.rpill.alto .d{background:var(--severity-high)}.rpill.med{color:var(--severity-medium);background:#ffc53d1f}.rpill.med .d{background:var(--severity-medium)}.rpill.baixo{color:var(--severity-low);background:#3fb6ff1f}.rpill.baixo .d{background:var(--severity-low)}.via-gw{font-size:.72rem;color:var(--success);background:#2ed3a31a;border-radius:6px;padding:.15rem .5rem}.netgroup{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.9rem;overflow:hidden}.netgroup .ng-head{display:flex;align-items:center;gap:.7rem;padding:1rem 1.1rem;border-bottom:1px solid var(--border)}.netgroup .ng-head .ng-meta{margin-left:auto;font-size:.78rem;color:var(--text-muted)}.tmpls{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem;margin-bottom:1.1rem}.tmpl{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem}.tmpl .t-head{display:flex;align-items:center;gap:.6rem}.tmpl .t-ic{color:var(--brand)}.tmpl .t-title{font-weight:700}.tmpl .t-desc{font-size:.78rem;color:var(--text-muted);margin:.3rem 0 .6rem}.tmpl .t-gen{color:var(--brand);font-size:.82rem;font-weight:600;cursor:pointer}.cal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;position:relative}.cal-title{font-weight:700;margin-bottom:.8rem}.cal-grid{display:grid;grid-template-columns:40px repeat(7,1fr);grid-auto-rows:42px;position:relative}.cal-colhead{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding-bottom:.3rem;text-align:center}.cal-time{font-size:.66rem;color:var(--text-muted)}.cal-cell{border-top:1px solid var(--border);border-left:1px solid var(--border)}.cal-ev{position:absolute;border-radius:7px;padding:.4rem .5rem;font-size:.74rem;border:1px solid;overflow:hidden}.cal-ev .ev-t{font-weight:700;color:#fff}.cal-ev .ev-c{font-size:.68rem;opacity:.8}.cal-ev .ev-lv{font-size:.62rem;font-weight:700;border-radius:4px;padding:.05rem .35rem;display:inline-block;margin-top:.3rem}.ev-fast{background:#ff6a131f;border-color:#ff6a1366}.ev-fast .ev-lv{background:var(--brand);color:#000}.ev-deep{background:#ff8c421a;border-color:#ff8c4266}.ev-deep .ev-lv{background:var(--severity-high);color:#000}.ev-medium{background:#2ed3a31a;border-color:#2ed3a366}.ev-medium .ev-lv{background:var(--success);color:#000}.ev-custom{background:#a78bfa1a;border-color:#a78bfa66}.ev-custom .ev-lv{background:var(--paused);color:#000}.sched-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.85rem;margin-bottom:.7rem}.sched-card .sc-top{display:flex;align-items:center;gap:.5rem}.sched-card .sc-title{font-weight:700}.sched-card .sc-chip{font-size:.64rem;color:var(--brand);background:#ff6a131f;border-radius:5px;padding:.08rem .4rem}.sched-card .sc-client{color:var(--text-secondary);font-size:.82rem;margin-top:.3rem}.sched-card .sc-time{color:var(--brand);font-size:.8rem;display:flex;align-items:center;gap:.3rem;margin-top:.2rem}.seg{display:inline-flex;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:2px}.seg button{border:none;background:transparent;color:var(--text-secondary);font-size:.8rem;padding:.35rem .8rem;border-radius:6px;font-weight:600;cursor:pointer}.seg button.on{background:var(--brand);color:#fff}.term{background:var(--terminal-bg);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden}.term-head{display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;border-bottom:1px solid var(--border)}.term-dots{display:flex;gap:5px}.term-dots i{width:10px;height:10px;border-radius:50%;display:inline-block}.term-dots i:nth-child(1){background:#ff5f57}.term-dots i:nth-child(2){background:#febc2e}.term-dots i:nth-child(3){background:#28c840}.term-title{font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary)}.term-live{margin-left:auto;font-size:.68rem;font-weight:700;color:var(--brand);display:inline-flex;align-items:center;gap:.35rem}.term-live .d{width:6px;height:6px;border-radius:50%;background:var(--brand)}.term-body{padding:.9rem 1rem;font-family:var(--font-mono);font-size:.8rem;line-height:1.8;overflow-y:auto;flex:1}.term-line{display:grid;grid-template-columns:62px 110px 1fr;gap:.6rem}.term-line .tt{color:var(--text-muted)}.term-line .tg.ok{color:var(--success)}.term-line .tg.crit{color:var(--severity-critical)}.term-line .tg.warn{color:var(--severity-high)}.term-line .tg.muted{color:var(--text-muted)}.term-line .tx.ok{color:var(--success)}.term-line .tx.crit{color:var(--severity-critical)}.term-line .tx.warn{color:var(--severity-high)}.term-line .tx.muted{color:var(--text-secondary)}.term-prompt{color:var(--brand)}.term-cursor{display:inline-block;width:8px;height:14px;background:var(--brand);vertical-align:-2px;animation:cvesafe-pulse 1s steps(1) infinite}.term-foot{display:flex;justify-content:flex-end;padding:.5rem 1rem;border-top:1px solid var(--border);font-size:.72rem;color:var(--success)}.exec-tabs{display:flex;gap:.4rem;padding:.6rem 1rem;border-bottom:1px solid var(--border)}.exec-tab{font-family:var(--font-mono);font-size:.74rem;padding:.25rem .6rem;border-radius:6px;border:1px solid var(--border);color:var(--text-secondary);display:inline-flex;align-items:center;gap:.35rem}.exec-tab.on{border-color:var(--brand);color:var(--brand)}.exec-tab .d{width:6px;height:6px;border-radius:50%;background:currentColor}.exec-prog{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.2rem;margin-bottom:1rem}.exec-prog .ep-top{display:flex;align-items:flex-start;justify-content:space-between}.exec-prog .ep-pct{font-size:1.8rem;font-weight:800;color:var(--brand)}.exec-prog .ep-phase{font-size:.82rem;color:var(--text-secondary)}.exec-prog .ep-right{text-align:right;font-size:.78rem;color:var(--text-muted)}.exec-prog .ep-bar{height:8px;border-radius:999px;background:var(--bg-raised);overflow:hidden;margin:.6rem 0}.exec-prog .ep-bar .f{height:100%;background:linear-gradient(90deg,var(--brand),var(--brand-soft))}.stepper2{display:flex;align-items:center;gap:0}.stepper2 .s2{display:flex;align-items:center;gap:.5rem}.stepper2 .s2 .dot{width:22px;height:22px;border-radius:50%;border:2px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--text-muted)}.stepper2 .s2.done .dot{background:var(--success);border-color:var(--success);color:#000}.stepper2 .s2.active .dot{border-color:var(--brand);color:var(--brand);box-shadow:0 0 0 4px #ff6a1326}.stepper2 .s2 .lb{font-size:.82rem;color:var(--text-muted)}.stepper2 .s2.done .lb{color:var(--success)}.stepper2 .s2.active .lb{color:var(--brand);font-weight:600}.stepper2 .line{flex:1;height:2px;background:var(--border);margin:0 .5rem}.stepper2 .line.on{background:var(--success)}.fcounts{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:.9rem}.fcount{border:1px solid var(--border);border-radius:3px;padding:.5rem .6rem}.fcount .v{font-size:1.4rem;font-weight:800}.fcount .l{font-size:.68rem}.fcount.crit .v,.fcount.crit .l{color:var(--severity-critical)}.fcount.high .v,.fcount.high .l{color:var(--severity-high)}.fcount.med .v,.fcount.med .l{color:var(--severity-medium)}.fcount.low .v,.fcount.low .l{color:var(--severity-low)}.fcard{background:var(--bg-surface);border:1px solid var(--border);border-left:3px solid;border-radius:3px;padding:.7rem .85rem;margin-bottom:.55rem;position:relative}.fcard.crit{border-left-color:var(--severity-critical)}.fcard.high{border-left-color:var(--severity-high)}.fcard.med{border-left-color:var(--severity-medium)}.fcard.low{border-left-color:var(--severity-low)}.fcard .f-sev{font-size:.66rem;font-weight:700}.fcard.crit .f-sev{color:var(--severity-critical)}.fcard.high .f-sev{color:var(--severity-high)}.fcard.med .f-sev{color:var(--severity-medium)}.fcard .f-t{font-weight:700;margin-top:.1rem}.fcard .f-s{font-size:.8rem;color:var(--text-secondary)}.fcard .f-m{font-size:.72rem;color:var(--text-muted);font-family:var(--font-mono);margin-top:.2rem}.fcard .f-chev{position:absolute;right:.7rem;top:.7rem;color:var(--text-muted)}.ch-live{font-size:.72rem;color:var(--success);background:#2ed3a31f;border-radius:6px;padding:.15rem .5rem;display:inline-flex;align-items:center;gap:.3rem}.ch-neutral{font-size:.74rem;color:var(--text-secondary);background:var(--bg-raised);border-radius:6px;padding:.15rem .5rem}.ch-depth{font-size:.72rem;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:6px;padding:.1rem .5rem}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:14px;width:480px;max-width:92vw;padding:1.3rem;box-shadow:0 20px 60px #0009}.modal-head{display:flex;align-items:center;gap:.7rem}.modal-head .m-ic{width:38px;height:38px;border-radius:3px;background:#a78bfa24;color:var(--paused);display:flex;align-items:center;justify-content:center}.modal-head .m-t{font-weight:700}.modal-head .m-s{font-size:.8rem;color:var(--text-muted)}.modal-head .m-x{margin-left:auto;color:var(--text-muted);background:var(--bg-raised);border:none;border-radius:6px;width:26px;height:26px;cursor:pointer}.optgrid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.8rem 0}.opt{border:1px solid var(--border);background:var(--bg-raised);border-radius:3px;padding:.7rem .9rem;font-size:.86rem;cursor:pointer;color:var(--text-primary);display:flex;align-items:center;gap:.4rem}.opt.on{border-color:var(--brand);color:var(--brand);background:#ff6a130f}.opt.on .d{width:6px;height:6px;border-radius:50%;background:var(--brand)}.modal-note{background:#ff6a1312;border:1px solid rgba(255,106,19,.25);border-radius:3px;padding:.7rem .85rem;font-size:.8rem;color:var(--brand-soft);margin:.6rem 0}.modal-foot{display:flex;justify-content:space-between;margin-top:.6rem}.btn-pause{background:var(--paused);border:none;color:#0a0a0c;font-weight:700;border-radius:3px;padding:.55rem 1rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}.wz-tabs{display:flex;gap:.5rem;margin-bottom:1.1rem}.wz-tab{font-size:.82rem;padding:.4rem .9rem;border-radius:3px;border:1px solid var(--border);color:var(--text-secondary);cursor:pointer}.wz-tab.on{border-color:var(--brand);color:var(--brand);background:#ff6a130f}.wz-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.scn-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.scn{border:1px solid var(--border);background:var(--bg-surface);border-radius:3px;padding:1rem;cursor:pointer;position:relative}.scn.on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.scn .s-ic{width:38px;height:38px;border-radius:9px;background:var(--bg-raised);color:var(--brand);display:flex;align-items:center;justify-content:center;margin-bottom:.6rem}.scn.on .s-ic{background:#ff6a1324}.scn .s-t{font-weight:700}.scn .s-d{font-size:.78rem;color:var(--text-muted);margin:.2rem 0 .5rem}.scn .s-chk{position:absolute;top:.8rem;right:.8rem;color:var(--brand)}.gw-chip{font-size:.7rem;display:inline-flex;align-items:center;gap:.3rem;border-radius:5px;padding:.1rem .4rem}.gw-chip.no{color:var(--success);background:#2ed3a31a}.gw-chip.req{color:var(--text-secondary);background:var(--bg-raised)}.lbl2{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-weight:700;margin:.4rem 0 .6rem}.depth{border:1px solid var(--border);background:var(--bg-surface);border-radius:3px;padding:.8rem 1rem;display:flex;align-items:center;gap:.7rem;cursor:pointer;margin-bottom:.6rem}.depth.on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.depth .radio{width:16px;height:16px;border-radius:50%;border:2px solid var(--border-strong);flex-shrink:0}.depth.on .radio{border-color:var(--brand);background:radial-gradient(circle,var(--brand) 40%,transparent 45%)}.depth .d-t{font-weight:700}.depth .d-s{font-size:.78rem;color:var(--text-muted)}.mods3{border:1px solid var(--brand);border-radius:3px;padding:1rem;display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.mods3 .m-col h5{font-size:.82rem;margin:0 0 .6rem;color:var(--text-primary)}.chkrow{display:flex;align-items:center;gap:.5rem;font-size:.82rem;padding:.3rem 0;color:var(--text-secondary);cursor:pointer}.chkbox{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--border-strong);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.7rem}.chkbox.on{background:var(--brand);border-color:var(--brand);color:#000}.wz-foot{display:flex;align-items:center;justify-content:space-between;margin-top:1.4rem;padding-top:1.1rem;border-top:1px solid var(--border)}.wz-foot .rs{font-size:.82rem;color:var(--text-secondary)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:200;display:flex;animation:dw-fade .15s ease-out}.drawer-left{width:480px;max-width:100vw;height:100%;background:var(--bg-surface);border-right:1px solid var(--border-strong);display:flex;flex-direction:column;box-shadow:12px 0 40px #00000073;animation:dw-in .2s ease-out}.drawer-head{display:flex;align-items:center;gap:.7rem;padding:1.1rem 1.3rem;border-bottom:1px solid var(--border)}.drawer-head h2{font-size:1.1rem;margin:0}.drawer-head .sub{font-size:.76rem;color:var(--text-muted);margin-top:2px}.drawer-body{flex:1;overflow-y:auto;padding:1.2rem 1.3rem}.drawer-sec{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:.4rem 0 .7rem}.drawer-foot{display:flex;gap:.6rem;justify-content:flex-end;padding:.9rem 1.3rem;border-top:1px solid var(--border);background:var(--bg-raised)}.req{color:var(--brand)}@keyframes dw-in{0%{transform:translate(-100%)}to{transform:none}}@keyframes dw-fade{0%{opacity:0}to{opacity:1}}.tsel-wrap{position:relative}.tsel-menu{position:absolute;top:calc(100% + 6px);left:0;width:320px;background:var(--bg-overlay);border:1px solid var(--border-strong);border-radius:3px;box-shadow:0 16px 40px #00000080;z-index:150;overflow:hidden}.tsel-search{padding:.6rem;border-bottom:1px solid var(--border)}.tsel-search input{padding:.45rem .6rem;font-size:.82rem}.tsel-list{max-height:320px;overflow-y:auto;padding:.3rem}.tsel-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:7px;cursor:pointer;font-size:.85rem;color:var(--text-secondary)}.tsel-item:hover{background:var(--bg-raised);color:var(--text-primary)}.tsel-item.on{color:var(--brand);background:#ff6a1314}.tsel-item .ava{width:26px;height:26px;border-radius:6px;background:var(--bg-raised);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.72rem;color:var(--text-primary);flex-shrink:0}.tsel-item .meta{font-size:.68rem;color:var(--text-muted)}.tsel-foot{display:flex;border-top:1px solid var(--border)}.tsel-foot button{flex:1;background:transparent;border:none;color:var(--text-secondary);padding:.6rem;font-size:.8rem;cursor:pointer;border-radius:0}.tsel-foot button:hover{color:var(--brand);background:var(--bg-raised)}.tsel-foot button+button{border-left:1px solid var(--border)}.no-tenant{border:1px dashed var(--border-strong);border-radius:3px;padding:3rem 1.5rem;text-align:center;color:var(--text-secondary)}.no-tenant h3{color:var(--text-primary);margin-bottom:.4rem}.session-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:radial-gradient(ellipse at center,#0e131b 0%,var(--bg-base) 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;animation:sv-in .35s ease-out both}.session-veil.leaving{animation:sv-out .5s ease-in both}.sv-radar{position:relative;width:96px;height:96px}.sv-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid rgba(255,106,19,.35);border-radius:50%}.sv-ring.r2{top:18px;right:18px;bottom:18px;left:18px}.sv-ring.r3{top:36px;right:36px;bottom:36px;left:36px}.sv-sweep{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:conic-gradient(from 0deg,#ff6a138c,#ff6a1300 28%);animation:sv-spin 1.1s linear infinite}.sv-core{position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--brand);box-shadow:0 0 14px var(--brand)}.session-veil.out .sv-sweep{animation-direction:reverse}.sv-brand{font-weight:800;letter-spacing:.22em;color:#fff;font-size:1rem;margin-top:.4rem}.sv-msg{font-size:.84rem;color:var(--text-secondary)}.sv-bar{width:180px;height:3px;border-radius:2px;background:var(--bg-raised);overflow:hidden}.sv-bar span{display:block;height:100%;width:40%;background:var(--brand);border-radius:2px;animation:sv-load .9s ease-in-out infinite}@keyframes sv-in{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1}}@keyframes sv-out{0%{opacity:1}to{opacity:0;transform:scale(1.04)}}@keyframes sv-spin{to{transform:rotate(360deg)}}@keyframes sv-load{0%{transform:translate(-100%)}to{transform:translate(260%)}}.app-shell .navbar{animation:shell-down .5s cubic-bezier(.2,.7,.2,1) both}.app-shell .sidebar{animation:shell-right .55s cubic-bezier(.2,.7,.2,1) .08s both}.app-shell .main{animation:shell-up .6s cubic-bezier(.2,.7,.2,1) .16s both}@keyframes shell-down{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}@keyframes shell-right{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:none}}@keyframes shell-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.login-enter .login-brand-panel{animation:shell-right .6s cubic-bezier(.2,.7,.2,1) both}.login-enter .login-form-panel{animation:login-slide-under .85s cubic-bezier(.2,.7,.2,1) .1s both}.login-enter.from-logout{animation:sv-in .5s ease-out both}.login-bye{animation:shell-up .4s ease-out .4s both}@keyframes login-slide-under{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (prefers-reduced-motion: reduce){.session-veil,.session-veil.leaving,.sv-sweep,.sv-bar span,.app-shell .navbar,.app-shell .sidebar,.app-shell .main,.login-enter .login-brand-panel,.login-enter .login-form-panel,.login-enter .login-card,.login-enter.from-logout,.login-bye{animation:none!important}}.nav-mssp{min-width:170px;max-width:300px;min-height:41.6px}.nav-mssp .val{font-size:.92rem;overflow:hidden;text-overflow:ellipsis}.tsel-wrap .nav-select{max-width:280px}.tsel-wrap .nav-select .val{overflow:hidden;text-overflow:ellipsis}.logo-sonar svg{overflow:visible}.logo-sonar .ls-arm{transform-origin:12px 12px;animation:ls-spin 3.2s linear infinite}.logo-sonar .ls-ping{transform-origin:12px 12px;animation:ls-ping 2.4s ease-out infinite}.logo-sonar .ls-blip{animation:ls-blip 3.2s ease-in-out infinite}@keyframes ls-spin{to{transform:rotate(360deg)}}@keyframes ls-ping{0%{transform:scale(.4);opacity:.9}to{transform:scale(2.1);opacity:0}}@keyframes ls-blip{0%,18%{opacity:0}24%{opacity:1}60%{opacity:.25}to{opacity:0}}@media (prefers-reduced-motion: reduce){.logo-sonar .ls-arm,.logo-sonar .ls-ping,.logo-sonar .ls-blip{animation:none}}.gstat.pending{color:var(--paused)}.gstat.pending .d{background:var(--paused)}.ph-sticky{position:sticky;top:60px;z-index:20;background:var(--bg-page);margin-bottom:.9rem;padding:.7rem 0 .6rem;border-bottom:1px solid var(--border)}.lx-grid{display:grid;grid-template-columns:220px minmax(0,1fr) 300px;gap:1.2rem;align-items:start}.lx-steps{position:sticky;top:150px;padding:.2rem 0;align-self:start}.lx-step{position:relative;display:flex;gap:.7rem;padding:0 0 1.05rem;cursor:pointer}.lx-step:last-child{padding-bottom:0}.lx-step:before{content:"";position:absolute;left:10px;top:24px;bottom:3px;width:1px;background:var(--border)}.lx-step:last-child:before{display:none}.lx-dot{width:21px;height:21px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.64rem;font-weight:600;border:1px solid var(--border-strong);color:var(--text-muted);background:var(--bg-page);position:relative;z-index:1;transition:border-color .15s,color .15s}.lx-step.done .lx-dot{color:var(--success);border-color:#2ed3a359}.lx-step.active .lx-dot{border-color:var(--brand);color:var(--brand);background:#ff6a1314}.lx-step.warn .lx-dot{border-color:var(--severity-high);color:var(--severity-high)}.lx-step:hover .lx-st{color:var(--text-primary)}.lx-st{font-size:.8rem;font-weight:500;color:var(--text-secondary);line-height:1.2;margin-top:2px}.lx-step.active .lx-st{color:var(--text-primary);font-weight:600}.lx-ss{font-size:.68rem;color:var(--text-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}.lx-sec{background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:1.05rem 1.2rem 1.15rem;margin-bottom:.75rem;scroll-margin-top:160px;transition:border-color .15s,box-shadow .15s}.lx-sec.active{border-color:var(--border-strong);box-shadow:inset 2px 0 0 var(--brand)}.lx-sec h3{font-size:.92rem;font-weight:600;margin:0 0 .15rem;display:flex;align-items:center;gap:.55rem;letter-spacing:.005em}.lx-sec h3 .n{font-family:var(--font-mono);font-size:.66rem;font-weight:500;color:var(--text-muted);border:1px solid var(--border);border-radius:3px;padding:0 5px;line-height:1.5}.lx-sec.active h3 .n{color:var(--brand);border-color:#ff6a1359}.lx-sec .desc{font-size:.76rem;color:var(--text-muted);margin-bottom:.8rem;line-height:1.45}.lx-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem}.lx-card{border:1px solid var(--border);border-radius:3px;padding:.7rem .85rem;background:var(--bg-raised);cursor:pointer;position:relative;transition:border-color .15s,background .15s}.lx-card:hover{border-color:var(--border-strong)}.lx-card.on{border-color:#ff6a1399;background:#ff6a1309}.lx-card.dis{opacity:.45;cursor:not-allowed}.lx-card .t{font-weight:600;color:var(--text-primary);font-size:.84rem;display:flex;align-items:center;gap:.45rem;padding-right:1.4rem}.lx-card .d{font-size:.72rem;color:var(--text-muted);margin-top:.25rem;line-height:1.4}.lx-card .ck{position:absolute;top:.7rem;right:.75rem;width:14px;height:14px;border-radius:50%;border:1px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-size:0;color:transparent}.lx-card.on .ck{border-color:var(--brand)}.lx-card.on .ck:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--brand)}.lx-card .tag{display:inline-block;margin-top:.45rem;font-family:var(--font-mono);font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;padding:0 5px;border-radius:2px;border:1px solid var(--border);background:transparent;color:var(--text-muted)}.lx-card .tag.rec{border-color:#2ed3a34d;color:var(--success)}.lx-card .tag.warn{border-color:#ff8c424d;color:var(--severity-high)}.lx-card .tag.gw{border-color:#a78bfa4d;color:var(--paused)}.lx-target-bar{display:flex;gap:.5rem;align-items:center;margin-bottom:.6rem}.lx-target-search{flex:1;min-width:0;background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.5rem .7rem;color:var(--text-primary);font-size:.82rem}.lx-target-search::placeholder{color:var(--text-muted)}.lx-target-search:focus{outline:none;border-color:var(--border-strong)}.lx-strip{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.35rem;scrollbar-width:thin}.lx-strip .lx-chip{flex:0 0 auto;width:212px}.lx-build-profile{display:flex;align-items:center;gap:.7rem;margin-top:.6rem;padding:.7rem .85rem;border:1px dashed var(--border-strong);border-radius:3px;background:var(--bg-raised);cursor:pointer;transition:border-color .15s,background .15s}.lx-build-profile:hover{border-color:var(--brand);background:#ff6a130a}.lx-build-profile .bp-ic{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:3px;border:1px solid var(--border);color:var(--brand);flex:0 0 auto}.lx-build-profile .bp-t{font-weight:600;color:var(--text-primary);font-size:.84rem}.lx-build-profile .bp-d{font-size:.72rem;color:var(--text-muted);margin-top:.15rem}.lx-build-profile>:last-child{margin-left:auto;color:var(--text-muted)}.lx-sub{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:.9rem 0 .45rem}.lx-opts{display:grid;grid-template-columns:1fr 1fr;gap:.35rem 1.2rem}.lx-dep{display:flex;gap:.8rem;align-items:flex-start;border:1px solid rgba(167,139,250,.4);background:#a78bfa12;border-radius:3px;padding:.85rem 1rem;margin-top:.9rem}.lx-dep.bad{border-color:#ff3d5a66;background:#ff3d5a0f}.lx-sum{position:sticky;top:150px;background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;overflow:hidden}.lx-sum .hd{padding:.9rem 1rem;border-bottom:1px solid var(--border);font-weight:700}.lx-sum .row{display:flex;justify-content:space-between;gap:.8rem;padding:.5rem 1rem;font-size:.8rem;border-bottom:1px solid var(--border)}.lx-sum .row .k{color:var(--text-muted)}.lx-sum .row .v{color:var(--text-primary);text-align:right;font-weight:500}.lx-sum .est{padding:.9rem 1rem;background:var(--bg-raised)}.lx-sum .est .big{font-size:1.5rem;font-weight:800;color:var(--brand)}.lx-sum .ft{padding:.9rem 1rem;display:flex;flex-direction:column;gap:.5rem}.lx-block{font-size:.74rem;color:var(--severity-high)}@media (max-width: 1280px){.lx-grid{grid-template-columns:190px minmax(0,1fr)}.lx-sum{position:static;grid-column:1 / -1}}.log-embed{position:relative;height:600px;cursor:pointer;overflow:hidden;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%)}.log-embed:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.018) 0 1px,transparent 1px 3px)}.log-embed-body{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:flex-start;gap:.25rem;padding:1.4rem .4rem 1.6rem;font-family:var(--font-mono);font-size:.78rem;overflow:hidden}.log-embed .term-line{opacity:.85}.log-embed .term-line:nth-last-child(-n+4){opacity:1}.log-in{animation:log-in .45s ease-out both}@keyframes log-in{0%{opacity:0;transform:translateY(8px);filter:blur(2px)}to{opacity:.85;transform:none;filter:none}}@media (prefers-reduced-motion: reduce){.log-in{animation:none}}.cal-toolbar{display:flex;align-items:center;gap:.6rem;margin-bottom:.7rem}.cal-nav{width:28px;height:28px;border-radius:7px;border:1px solid var(--border);background:var(--bg-raised);color:var(--text-secondary);cursor:pointer;font-size:1rem;line-height:1}.cal-nav:hover{border-color:var(--brand);color:var(--brand)}.cal-today{border:1px solid var(--border);background:var(--bg-raised);color:var(--text-secondary);border-radius:7px;padding:.25rem .7rem;font-size:.74rem;cursor:pointer}.cal-today:hover{border-color:var(--brand);color:var(--brand)}.cal-colhead.today{color:var(--brand)}.cal-now{position:absolute;height:0;border-top:2px solid var(--brand);z-index:4;box-shadow:0 0 8px #ff6a1380}.cal-now-dot{position:absolute;left:-4px;top:-4px;width:7px;height:7px;border-radius:50%;background:var(--brand);box-shadow:0 0 6px var(--brand)}.cal-now-lbl{position:absolute;right:2px;top:-16px;font-size:.62rem;font-weight:700;color:var(--brand);background:var(--bg-base);padding:0 3px;border-radius:3px}.asset-modal{width:820px;max-width:94vw;max-height:88vh;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:14px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px #0000008c;animation:shell-up .25s ease-out both}.am-head{display:flex;align-items:center;gap:.8rem;padding:1.1rem 1.3rem;border-bottom:1px solid var(--border)}.am-stats{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--border)}.am-stats>div{padding:.8rem 1.1rem;border-right:1px solid var(--border)}.am-stats>div:last-child{border-right:none}.am-k{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.am-v{font-size:1.5rem;font-weight:800;color:var(--text-primary);margin-top:2px}.am-v.crit{color:var(--severity-critical)}.am-body{padding:1.1rem 1.3rem;overflow-y:auto}.am-foot{display:flex;gap:.6rem;justify-content:flex-end;padding:.9rem 1.3rem;border-top:1px solid var(--border);background:var(--bg-raised)}.cal-ev{cursor:pointer;transition:box-shadow .15s,transform .1s}.cal-ev:hover{box-shadow:0 2px 10px #0006}.cal-ev.ev-sel{outline:2px solid var(--brand);outline-offset:1px}.cal-ev.ev-paused{opacity:.5}.sched-modal{width:440px;max-width:94vw;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:14px;overflow:hidden;box-shadow:0 24px 60px #0000008c;animation:shell-up .2s ease-out both}.sm-head{display:flex;align-items:center;gap:.7rem;padding:1rem 1.2rem;border-bottom:1px solid var(--border)}.sm-body{padding:1.1rem 1.2rem}.sm-foot{display:flex;gap:.5rem;align-items:center;padding:.9rem 1.2rem;border-top:1px solid var(--border);background:var(--bg-raised)}.brand-drop{width:48px;height:48px;border-radius:3px;border:1px dashed var(--border-strong);background:var(--bg-raised);display:flex;align-items:center;justify-content:center;color:var(--text-muted);overflow:hidden;flex-shrink:0}.brand-drop.sm{width:36px;height:36px}.brand-drop img{width:100%;height:100%;object-fit:contain}.brand-preview{border:1px solid var(--border-strong);border-radius:3px;overflow:hidden;background:var(--bg-base)}.pv-nav{display:flex;align-items:center;gap:.5rem;padding:.6rem .7rem;background:var(--bg-surface);border-bottom:1px solid var(--border)}.pv-logo{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden}.pv-logo img{width:100%;height:100%;object-fit:contain}.pv-btn{font-size:.64rem;font-weight:700;color:#fff;padding:.3rem .6rem;border-radius:6px;white-space:nowrap}.pv-btn.ghost{background:transparent;border:1px solid;display:inline-block;margin-top:.6rem}.pv-body{padding:.8rem .9rem;display:flex;flex-direction:column;gap:.6rem}.pv-pill{align-self:flex-start;font-size:.6rem;font-weight:700;border:1px solid;border-radius:20px;padding:.15rem .5rem}.pv-kpi{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.pv-kpi .k{font-size:.58rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.pv-kpi .v{font-size:1.3rem;font-weight:800}.pv-bar{height:6px;border-radius:4px;background:var(--bg-raised);overflow:hidden}.pv-bar span{display:block;height:100%;border-radius:4px}.pv-login{padding:.7rem .9rem;border-top:1px solid var(--border);background:var(--bg-surface)}.pv-url{font-size:.68rem;margin-top:4px}input[type=color]{padding:2px;background:var(--bg-input);border:1px solid var(--border-strong);border-radius:3px;cursor:pointer}.lang-pick-card{display:flex;align-items:center;gap:.8rem;padding:.9rem 1rem;background:var(--bg-raised);border:1px solid var(--border);border-radius:0;cursor:pointer;transition:border-color .15s,background .15s}.lang-pick-card:hover{border-color:var(--brand);background:#ff6a130d}button.mod{font:inherit;background:transparent}button.mod.on{border-color:var(--brand);color:var(--brand)}.mod .mod-caret{color:var(--text-muted);font-size:.7rem;margin-left:.1rem}button.mod.on .mod-caret{color:var(--brand)}.mod-note{margin-top:.55rem;padding:.6rem .75rem;background:var(--bg-raised);border:1px solid var(--border);border-left:2px solid var(--brand);border-radius:3px;font-size:.76rem;color:var(--text-secondary);line-height:1.5}.tenant-switch{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;background:#05070ab8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:ts-fade .12s ease-out}.ts-card{display:flex;flex-direction:column;align-items:center;gap:.55rem;padding:1.6rem 2.2rem;background:var(--bg-surface);border:1px solid var(--border-strong);position:relative}.ts-ava{width:46px;height:46px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700;font-size:.95rem;color:var(--brand);border:1px solid rgba(255,106,19,.45);background:#ff6a130f}.ts-spin{position:absolute;top:1.6rem;left:50%;transform:translate(-50%);width:46px;height:46px;border:2px solid transparent;border-top-color:var(--brand);border-radius:50%;animation:ts-rot .7s linear infinite}.ts-name{font-weight:700;color:var(--text-primary);font-size:1rem;margin-top:.2rem}.ts-sub{font-size:.76rem;color:var(--text-muted)}@keyframes ts-rot{to{transform:translate(-50%) rotate(360deg)}}@keyframes ts-fade{0%{opacity:0}to{opacity:1}}.exec-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:.85rem}.exec-kpi{background:var(--bg-surface);border:1px solid var(--border);border-radius:3px;padding:.85rem 1rem;min-width:0}.exec-kpi.ek-rowed{display:flex;align-items:center;gap:.9rem}.ek-lbl{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.ek-main{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-top:.3rem;line-height:1.1}.ek-main.mono{font-family:var(--font-mono)}.ek-sub{font-size:.74rem;color:var(--text-muted);margin-top:.3rem;overflow:hidden;text-overflow:ellipsis}.ek-breakdown{display:flex;flex-wrap:wrap;gap:.3rem .5rem;margin-top:.5rem}.ekb{font-size:.68rem;font-weight:600;display:inline-flex;align-items:center;gap:.3rem;color:var(--text-secondary)}.ekb:before{content:"";width:7px;height:7px;border-radius:50%;display:inline-block}.ekb.crit:before{background:var(--severity-critical)}.ekb.high:before{background:var(--severity-high)}.ekb.med:before{background:var(--severity-medium)}.ekb.low:before{background:var(--text-muted)}@media (max-width: 1100px){.exec-kpis{grid-template-columns:repeat(2,1fr)}}.tgraph{display:grid;grid-template-columns:1fr 200px;gap:1rem;align-items:start}.tgraph-canvas{position:relative;width:100%}.tgraph-svg{width:100%;height:auto;display:block}.tgraph-overlay{position:absolute;top:0;right:0;bottom:0;left:0}.tg-center{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:.3rem;background:var(--bg-surface);border:1px solid var(--brand);border-radius:50%;width:112px;height:112px;justify-content:center;cursor:pointer;padding:.4rem}.tg-center:hover{background:#ff6a130f}.tg-c-ic{color:var(--brand)}.tg-c-name{font-size:.6rem;color:var(--text-primary);text-align:center;word-break:break-all;line-height:1.15;max-width:96px}.tg-node{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;gap:.5rem;background:var(--bg-raised);border:1px solid var(--border);border-left-width:3px;border-radius:3px;padding:.45rem .6rem;cursor:pointer;min-width:128px;max-width:160px;transition:background .15s,border-color .15s}.tg-node:hover{background:var(--bg-surface)}.tg-n-ic{flex-shrink:0}.tg-n-body{display:flex;flex-direction:column;min-width:0}.tg-n-label{font-size:.74rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tg-n-meta{font-size:.66rem;color:var(--text-muted)}.tgraph-posture{background:var(--bg-raised);border:1px solid var(--border);border-radius:3px;padding:.7rem .8rem}.tgp-title{font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.6rem}.tgp-items{display:flex;flex-direction:column;gap:.55rem}.tgp-item{display:flex;align-items:center;gap:.5rem}.tgp-mark{width:16px;height:16px;border:1px solid;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0}.tgp-k{font-size:.78rem;color:var(--text-secondary);flex:1}.tgp-v{font-size:.72rem;font-weight:600}@media (max-width: 900px){.tgraph{grid-template-columns:1fr}}.log-live{animation:logpulse 1.4s ease-in-out infinite}@keyframes logpulse{0%,to{opacity:1}50%{opacity:.45}}.log-top-btn{display:flex;align-items:center;gap:.5rem;height:34px;background:var(--bg-raised, #0c1118);border:1px solid var(--border-strong);border-radius:7px;padding:0 .6rem;cursor:pointer}.log-top-btn:hover{border-color:var(--brand)}.log-top-label{font-family:var(--font-mono, monospace);font-size:.72rem;color:var(--text-muted);white-space:nowrap}.log-top-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:1500;width:min(560px,88vw);background:#0c1118;border:1px solid var(--border-strong);border-radius:10px;overflow:hidden;box-shadow:0 18px 46px #0009}.log-top-head{display:flex;align-items:center;gap:8px;padding:9px 12px;background:#0c1118;border-bottom:1px solid #11151c}@media (max-width: 760px){.log-top-panel{width:calc(100vw - 24px);right:-8px}}.tflow-wrap{display:block}.tflow-canvas{height:620px;border:1px solid var(--border);border-radius:3px;background:var(--bg-base, #05070a);overflow:hidden}.tflow-canvas .react-flow__attribution{background:transparent;font-size:9px}.tflow-canvas .react-flow__attribution a{color:var(--text-muted)}.tflow-canvas .react-flow__controls{box-shadow:none;border:1px solid var(--border)}.tflow-canvas .react-flow__controls-button{background:var(--bg-surface);border-bottom:1px solid var(--border);color:var(--text-secondary)}.tflow-canvas .react-flow__controls-button:hover{background:var(--bg-raised)}.tflow-canvas .react-flow__controls-button svg{fill:var(--text-secondary)}.tf-handle{opacity:0;width:1px;height:1px;min-width:0;min-height:0;border:none}.tf-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;width:104px;height:104px;border-radius:50%;background:var(--bg-surface);border:1px solid var(--brand);padding:.4rem}.tf-center-ic{color:var(--brand)}.tf-center-name{font-size:.58rem;color:var(--text-primary);text-align:center;word-break:break-all;line-height:1.15;max-width:92px}.tf-node{display:flex;align-items:center;gap:.5rem;background:var(--bg-raised);border:1px solid var(--border);border-left-width:3px;border-radius:3px;padding:.45rem .6rem;width:190px;cursor:pointer}.tf-node:hover{background:var(--bg-surface)}.tf-node-ic{flex-shrink:0}.tf-node-body{display:flex;flex-direction:column;min-width:0}.tf-node-label{font-size:.76rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-node-meta{font-size:.66rem;color:var(--text-muted)}@media (max-width: 900px){.tflow-wrap{grid-template-columns:1fr}.tflow-canvas{height:360px}}.tf-hub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;width:124px;height:124px;border-radius:50%;background:radial-gradient(circle at 50% 38%,rgba(255,106,19,.1),var(--bg-surface) 70%);border:1.5px solid var(--brand);box-shadow:0 0 0 6px #ff6a130d,0 10px 26px #00000080;padding:.4rem}.tf-hub-ic{color:var(--brand)}.tf-hub-name{font-size:.6rem;color:var(--text-primary);text-align:center;word-break:break-all;line-height:1.12;max-width:104px}.tf-hub-tag{font-size:.56rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.tf-hub-live{position:absolute;top:12px;right:18px;width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.tf-hub-live.on{background:var(--success);box-shadow:0 0 0 3px #2ed3a326;animation:tfpulse 1.4s ease-in-out infinite}@keyframes tfpulse{0%,to{opacity:1}50%{opacity:.4}}.tf-hubc{position:relative;width:272px;background:radial-gradient(circle at 18% 0%,rgba(255,106,19,.12),var(--bg-surface) 62%);border:1.5px solid var(--brand);border-radius:4px;padding:.75rem .85rem .7rem;box-shadow:0 0 0 5px #ff6a130d,0 12px 30px #0000008c}.tf-hubc-head{display:flex;align-items:center;gap:.55rem}.tf-hubc-ic{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:3px;color:var(--brand);background:#ff6a131f;border:1px solid rgba(255,106,19,.4);flex-shrink:0}.tf-hubc-titles{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.tf-hubc-name{font-size:.84rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-hubc-kind{font-size:.56rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted)}.tf-pill{display:inline-flex;align-items:center;gap:.28rem;flex-shrink:0;font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;line-height:1;padding:.22rem .42rem;border-radius:3px;color:#0b0e13;background:var(--c, var(--text-muted));white-space:nowrap}.tf-pill i{width:5px;height:5px;border-radius:50%;background:currentColor;animation:tfpulse 1.2s ease-in-out infinite}.tf-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:.65rem;padding-top:.6rem;border-top:1px solid var(--border)}.tf-stat{display:flex;flex-direction:column;min-width:0}.tf-stat-k{font-size:.54rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-stat-v{font-size:.98rem;font-weight:700;color:var(--text-primary);line-height:1.15;margin-top:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize}.tf-stat-v.mono{font-family:var(--font-mono);text-transform:none}.tf-stat-sub{font-size:.58rem;color:var(--text-muted);margin-top:.12rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-card{position:relative;width:272px;background:var(--bg-surface);border:1px solid var(--border);border-radius:4px;padding:.75rem .85rem .6rem;box-shadow:0 8px 22px #0006;cursor:pointer;transition:box-shadow .12s ease,border-color .12s ease}.tf-card:before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:2px;background:var(--c, var(--border-strong));border-radius:4px 4px 0 0}.tf-card:hover{border-color:var(--border-strong);box-shadow:0 12px 28px #0000008c}.tf-card.live{border-color:color-mix(in srgb,var(--brand) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent),0 12px 28px #0000008c}.tf-card-head{display:flex;align-items:flex-start;gap:.55rem}.tf-card-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:3px;flex-shrink:0;color:var(--c, var(--text-secondary));background:color-mix(in srgb,var(--c, #888) 14%,transparent);border:1px solid color-mix(in srgb,var(--c, #888) 40%,transparent)}.tf-card-titles{display:flex;flex-direction:column;gap:.12rem;min-width:0;flex:1}.tf-card-title{font-size:.84rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-card-sub{font-size:.62rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-bar{display:flex;gap:2px;height:5px;margin-top:.65rem;background:var(--bg-raised);border-radius:2px;overflow:hidden}.tf-bar span{display:block;height:100%;min-width:3px}.tf-card-foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.5rem;font-size:.62rem}.tf-legend{display:flex;gap:.6rem;color:var(--text-secondary);font-family:var(--font-mono);min-width:0;overflow:hidden;white-space:nowrap}.tf-legend>span{display:inline-flex;align-items:center;gap:.25rem}.tf-legend i{width:7px;height:7px;border-radius:1px;display:inline-block}.tf-card-act{display:inline-flex;align-items:center;gap:.15rem;flex-shrink:0;font-weight:600;color:var(--text-secondary)}.tf-card:hover .tf-card-act,.tf-card.exp .tf-card-act{color:var(--c, var(--text-primary))}.tflow-canvas .react-flow__edge.animated .react-flow__edge-path{animation:rfdash .6s linear infinite}@keyframes rfdash{to{stroke-dashoffset:-9}}.tflow-canvas .react-flow__edge-path{filter:drop-shadow(0 0 1px rgba(0,0,0,.4))}.tflow-canvas .react-flow__edge.tf-edge-live .react-flow__edge-path{animation:rfdash .45s linear infinite,tfedgeglow 1.3s ease-in-out infinite}@keyframes tfedgeglow{0%,to{filter:drop-shadow(0 0 2px currentColor)}50%{filter:drop-shadow(0 0 6px currentColor)}}.tflow-canvas{position:relative}.tf-card.exp{border-color:var(--c, var(--border-strong));box-shadow:0 0 0 1px var(--c, var(--border-strong)),0 12px 28px #0000008c}.tf-item{position:relative;display:flex;align-items:center;gap:.45rem;width:256px;background:var(--bg-surface);border:1px solid var(--border);border-left:2px solid var(--c, var(--border-strong));border-radius:4px;padding:.42rem .55rem;box-shadow:0 4px 12px #0000004d;transition:transform .1s ease,border-color .1s ease}.tf-item.click{cursor:pointer}.tf-item.click:hover{transform:translate(2px);border-color:var(--border-strong);border-left-color:var(--c, var(--border-strong))}.tf-item-tag{flex-shrink:0;font-family:var(--font-mono);font-size:.54rem;font-weight:800;letter-spacing:.04em;padding:.12rem .32rem;border-radius:2px;color:var(--c, var(--text-secondary));background:color-mix(in srgb,var(--c, #888) 14%,transparent);border:1px solid color-mix(in srgb,var(--c, #888) 40%,transparent)}.tf-item-body{display:flex;flex-direction:column;gap:.08rem;min-width:0;flex:1}.tf-item-label{font-size:.72rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-item-sub{font-size:.6rem;color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tf-item-go{color:var(--text-muted);display:inline-flex;flex-shrink:0}.tf-item.click:hover .tf-item-go{color:var(--c, var(--text-secondary))}.tf-delta{font-size:.6rem;font-weight:700;font-family:var(--font-mono);margin-top:.12rem;color:var(--text-secondary);white-space:nowrap}.tf-delta.good{color:var(--success)}.tf-delta.bad{color:var(--severity-critical)}.tf-link{color:var(--brand);cursor:pointer;text-decoration:none}.tf-link:hover{text-decoration:underline}.tf-elabel{position:absolute;pointer-events:none;z-index:2}.tf-stage{display:inline-flex;align-items:center;gap:.3rem;font-size:.6rem;font-weight:600;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:3px;padding:.16rem .42rem;white-space:nowrap;box-shadow:0 4px 10px #00000073}.tf-stage b{font-weight:800;font-size:.66rem;line-height:1}.tf-stage-t{font-family:var(--font-mono);color:var(--text-primary);font-weight:700}.tf-stage.ok{border-color:color-mix(in srgb,var(--success) 45%,var(--border))}.tf-stage.ok b{color:var(--success)}.tf-stage.run{border-color:var(--brand);color:var(--text-primary)}.tf-stage.run .tf-stage-t{color:var(--brand)}.tf-stage.bad{border-color:color-mix(in srgb,var(--severity-critical) 55%,var(--border))}.tf-stage.bad b{color:var(--severity-critical)}.tf-stage.idle b{color:var(--text-muted)}.tf-stage-dot{width:6px;height:6px;border-radius:50%;background:var(--brand);box-shadow:0 0 6px var(--brand);animation:tfpulse 1.1s ease-in-out infinite}.tf-item.exp{border-color:var(--c, var(--border-strong));box-shadow:0 0 0 1px var(--c, var(--border-strong)),0 6px 16px #00000073}.tf-item.exp .tf-item-go{color:var(--c, var(--text-primary))}.tf-detail{position:relative;width:268px;background:var(--bg-surface);border:1px solid var(--border);border-left:2px solid var(--c, var(--border-strong));border-radius:4px;padding:.42rem .6rem;box-shadow:0 4px 12px #0000004d;display:flex;flex-direction:column;gap:.16rem}.tf-detail.click{cursor:pointer}.tf-detail.click:hover{border-color:var(--border-strong);border-left-color:var(--c, var(--border-strong));transform:translate(2px)}.tf-detail-k{font-size:.54rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--c, var(--text-muted))}.tf-detail-v{font-size:.66rem;color:var(--text-primary);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.tf-detail-v.mono{font-family:var(--font-mono);font-size:.62rem;color:var(--text-secondary)}.tf-detail.act{border-style:dashed;border-left-style:solid;border-left-color:var(--brand);background:color-mix(in srgb,var(--brand) 6%,var(--bg-surface))}.tf-detail.act .tf-detail-v{display:inline-flex;align-items:center;gap:.2rem;font-weight:700;color:var(--brand)}.find-head{gap:.8rem;flex-wrap:wrap}.find-search{display:flex;align-items:center;gap:.4rem;flex:1 1 220px;max-width:320px}.sev-chips{display:flex;gap:.35rem;flex-wrap:wrap}.sev-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;color:var(--text-secondary);background:transparent;border:1px solid var(--border);border-radius:3px;padding:.28rem .55rem;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.sev-chip b{font-family:var(--font-mono);font-weight:700;color:var(--text-primary)}.sev-chip i{width:7px;height:7px;border-radius:50%;background:var(--text-muted)}.sev-chip.critical i{background:var(--severity-critical)}.sev-chip.high i{background:var(--severity-high)}.sev-chip.medium i{background:var(--severity-medium)}.sev-chip:hover{border-color:var(--border-strong);color:var(--text-primary)}.sev-chip.on{border-color:var(--brand);color:var(--text-primary);background:color-mix(in srgb,var(--brand) 10%,transparent)}.find-row{align-items:center}.find-title{font-size:.86rem;font-weight:600;color:var(--text-primary);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.find-tail{font-size:.74rem;color:var(--text-muted);margin-top:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tflow-reset{position:absolute;top:10px;right:10px;z-index:5;font-size:.68rem;font-weight:600;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:5px;padding:.25rem .55rem;cursor:pointer;box-shadow:0 4px 12px #0006}.tflow-reset:hover{color:var(--text-primary);border-color:var(--brand)}html{scrollbar-gutter:stable}.page-enter{animation:page-in .26s cubic-bezier(.2,.7,.2,1) both}.page-enter.soft{animation-name:page-in-soft;animation-duration:.2s}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes page-in-soft{0%{opacity:0}to{opacity:1}}.nav-link{transition:background-color .18s ease,color .18s ease}.nav-link .ni{transition:color .18s ease}@media (prefers-reduced-motion: reduce){.page-enter,.page-enter.soft{animation:page-in-soft .2s ease-out both!important}}
