.infra-modal-overlay{position:fixed;inset:0;background:#040810d1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .15s ease-out}.infra-modal-content{width:100%;max-width:680px;background:var(--bg-elev);border:1px solid var(--border-bright);border-radius:var(--radius);padding:24px;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:0 20px 50px #000c}.infra-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:16px}.infra-modal-close{background:transparent;border:none;color:var(--text-faint);font-size:1.3rem;cursor:pointer;touch-action:manipulation;padding:8px;min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;line-height:1}.infra-modal-close:hover{color:var(--text)}.infra-modal-close:active{transform:scale(.94)}.infra-scorecard-banner{padding:16px;background:var(--bg-elev-2);border:1px solid;border-radius:var(--radius)}@media(max-width:640px){.infra-modal-overlay{padding:12px}.infra-modal-content{padding:16px;max-height:94vh}}.sats-page{display:flex;flex-direction:column;gap:16px}.sats-brand-tag{font-size:.76rem;letter-spacing:.08em;color:#38bdf8;text-transform:uppercase;font-weight:700}.sats-live-pill{display:inline-flex;align-items:center;gap:8px;background:color-mix(in srgb,var(--high) 15%,transparent);border:1px solid color-mix(in srgb,var(--high) 35%,transparent);color:var(--high);font-size:.78rem;padding:6px 14px;border-radius:20px}.sats-dot{width:8px;height:8px;border-radius:50%;background:var(--high);box-shadow:0 0 8px var(--high);animation:pulseDot 2s infinite ease-in-out}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.sats-metrics-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;gap:12px 20px}.sats-metric-item{display:flex;flex-direction:column;gap:2px;min-width:120px}.sats-metric-val{font-size:1.15rem;font-weight:800;color:#fff}.sats-vert-card{cursor:pointer;border:1px solid var(--border);transition:all .15s ease;background:var(--bg-elev);padding:18px;border-radius:var(--radius);touch-action:manipulation}.sats-vert-card:hover{border-color:var(--border-bright);transform:translateY(-2px)}.sats-vert-card:active{transform:scale(.98)}.sats-vert-card--active{border-color:var(--accent)!important;box-shadow:0 0 20px -4px var(--accent-glow);background:color-mix(in srgb,var(--accent) 6%,var(--bg-elev))}.sats-badge{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:4px;border:1px solid}.sats-feat-list{list-style:none;padding:0;margin:0;font-size:.78rem;color:var(--text-dim);display:flex;flex-direction:column;gap:4px}.sats-feat-list li{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sats-detail-panel{padding:24px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.sats-box{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 16px}.sats-grid-table{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;width:100%}.sats-row{display:grid;grid-template-columns:2fr 2fr 1.5fr 1fr;padding:10px 14px;align-items:center;border-bottom:1px solid var(--border);font-size:.8rem;gap:8px}.sats-row:last-child{border-bottom:none}.sats-row--head{background:var(--bg-elev-2);font-size:.76rem;color:var(--text-faint);text-transform:uppercase}@media(max-width:768px){.sats-metrics-bar{display:grid;grid-template-columns:repeat(2,1fr);padding:14px 16px}.sats-detail-panel{padding:16px}}@media(max-width:640px){.sats-metrics-bar{grid-template-columns:1fr}.sats-row--head{display:none}.sats-row{grid-template-columns:1fr;gap:6px;padding:12px 14px;background:var(--bg-elev)}.sats-row:nth-child(2n){background:var(--bg-elev-2)}}.wifi-audit-container{display:flex;flex-direction:column;gap:20px}.wifi-top-banner{background:radial-gradient(circle at 90% 10%,#38bdf81f,#0f172a99);border:1px solid rgba(56,189,248,.25);border-radius:var(--radius-md);padding:18px 20px}.wifi-controls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.wifi-probe-terminal{background:#050811;border:1px solid rgba(56,189,248,.2);border-radius:var(--radius-sm);padding:14px;font-family:var(--font-mono, monospace);font-size:.78rem;line-height:1.5;color:#38bdf8;max-height:220px;overflow-y:auto}.wifi-attack-path-flow{display:flex;align-items:stretch;gap:12px;overflow-x:auto;padding:10px 2px}.wifi-attack-node{flex:1;min-width:170px;background:#ffffff08;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:6px;position:relative}.wifi-attack-node.exploited{border-color:#ef444466;background:radial-gradient(circle at top,rgba(239,68,68,.1),transparent)}.wifi-attack-node.blocked{border-color:#34d39966;background:radial-gradient(circle at top,rgba(52,211,153,.1),transparent)}.wifi-finding-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;display:flex;flex-direction:column;gap:10px}.wifi-finding-card.critical{border-color:#ef444459;background:radial-gradient(circle at 95% 5%,rgba(239,68,68,.06),transparent)}@media(max-width:600px){.wifi-controls-grid{grid-template-columns:1fr}.wifi-attack-path-flow{flex-direction:column}.wifi-attack-node{min-width:0;width:100%}.wifi-top-banner{padding:14px}}
