.attack-matrix-wrap[data-v-27c5ae59]{--card:rgba(20,21,30,0.55);--ink:#fff;--muted:hsla(0,0%,100%,0.6);--border:hsla(0,0%,100%,0.1);--chip:rgba(20,21,30,0.7);--chip-border:hsla(0,0%,100%,0.1);--accent:#68b1ff;--track:hsla(0,0%,100%,0.06);--progress:#68b1ff;--not-applicable:#374151;--available:#e36b37;--partial:#3171b5;--full:#30c174;padding-bottom:140px;color:var(--ink)}.am-controls-card[data-v-27c5ae59]{margin-bottom:12px}.am-controls-card .mdr-card__head .mdi[data-v-27c5ae59]{color:var(--accent)}.header-controls[data-v-27c5ae59]{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.filter-group[data-v-27c5ae59]{display:flex;align-items:center;gap:8px}.filter-group label[data-v-27c5ae59]{font-size:13px;color:var(--muted);font-weight:500}.category-select[data-v-27c5ae59]{padding:6px 12px;border:1px solid var(--border);border-radius:8px;font-size:13px;min-width:180px;max-width:250px;background:rgba(0,0,0,.35);color:var(--ink);cursor:pointer;transition:border-color .2s,box-shadow .2s}.category-select option[data-v-27c5ae59]{background:#14151e;color:var(--ink)}.category-select[data-v-27c5ae59]:hover{border-color:var(--accent)}.category-select[data-v-27c5ae59]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px rgba(104,177,255,.18)}.am-state-card[data-v-27c5ae59]{text-align:center;padding:48px 24px;margin-bottom:12px}.am-state-card h3[data-v-27c5ae59]{font-size:18px;font-weight:700;color:var(--ink);margin:8px 0}.am-state-card p[data-v-27c5ae59]{color:var(--muted);margin-bottom:16px}.empty-icon[data-v-27c5ae59],.error-icon[data-v-27c5ae59]{font-size:22px;width:50px;height:50px;line-height:50px;border-radius:50%;background:var(--not-applicable);color:#fff;margin:0 auto 12px;font-weight:700;text-align:center}.am-state-card--error .error-icon[data-v-27c5ae59]{background:#ad2a2a}.legend-panel[data-v-27c5ae59]{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:12px}.legend-header[data-v-27c5ae59]{justify-content:space-between;width:100%;flex-wrap:wrap}.filter-controls[data-v-27c5ae59],.legend-header[data-v-27c5ae59]{display:flex;align-items:center;gap:10px}.filter-status[data-v-27c5ae59]{font-size:12px;color:var(--accent);background:rgba(104,177,255,.12);padding:4px 12px;border-radius:999px;font-weight:600}.reset-filters-btn[data-v-27c5ae59]{font-size:11px}.legend-items[data-v-27c5ae59]{display:flex;gap:20px;flex-wrap:wrap}.legend-item[data-v-27c5ae59]{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);transition:opacity .3s,transform .2s}.legend-item.clickable[data-v-27c5ae59]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.legend-item.clickable[data-v-27c5ae59]:hover{transform:translateY(-2px)}.legend-item.clickable[data-v-27c5ae59]:active{transform:translateY(0)}.legend-item.inactive[data-v-27c5ae59]{opacity:.35;text-decoration:line-through}.legend-item.inactive .legend-box[data-v-27c5ae59]{opacity:.4;filter:grayscale(50%)}.legend-box[data-v-27c5ae59]{width:40px;height:20px;border-radius:4px;border:1px solid var(--border)}.legend-box.not-applicable[data-v-27c5ae59]{background:var(--not-applicable)}.legend-box.available[data-v-27c5ae59]{background:transparent;border:2px solid var(--available)}.legend-box.partial[data-v-27c5ae59]{background:linear-gradient(90deg,var(--partial) 50%,var(--chip) 0)}.legend-box.full[data-v-27c5ae59]{background:var(--full)}.stats-panel[data-v-27c5ae59]{display:flex;gap:8px;flex-wrap:wrap;justify-content:space-around;margin-bottom:12px}.stat-card[data-v-27c5ae59]{text-align:center;padding:12px 20px;background:hsla(0,0%,100%,.04);border:1px solid var(--border);border-radius:10px;min-width:140px}.stat-value[data-v-27c5ae59]{font-size:32px;font-weight:700;color:var(--ink);line-height:1;margin-bottom:4px}.stat-label[data-v-27c5ae59]{font-size:12px;color:var(--muted)}.stat-card.applicable .stat-value[data-v-27c5ae59]{color:var(--available)}.stat-card.enabled .stat-value[data-v-27c5ae59]{color:var(--full)}.stat-card.potential .stat-value[data-v-27c5ae59]{color:var(--partial)}.label[data-v-27c5ae59]{font-size:13px;color:var(--muted);margin-right:6px;font-weight:600}.master-detail[data-v-27c5ae59]{display:flex;margin-bottom:12px;min-height:60vh}.tactics-sidebar[data-v-27c5ae59]{flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.tactics-sidebar-header[data-v-27c5ae59],.techniques-sidebar-header[data-v-27c5ae59]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--card);border:1px solid var(--border);border-radius:12px 12px 0 0;margin-bottom:0;backdrop-filter:blur(8px)}.sidebar-title[data-v-27c5ae59]{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.tactics-list[data-v-27c5ae59]{display:flex;flex-direction:column;gap:4px;overflow-y:auto;max-height:calc(100vh - 390px);padding:6px;background:var(--card);border:1px solid var(--border);border-top:none;border-radius:0 0 12px 12px;backdrop-filter:blur(8px)}.tactics-list.grid[data-v-27c5ae59]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px}.tactics-list.grid .tactic-item[data-v-27c5ae59]{padding:10px 12px}.tactics-list.grid .tactic-item-top h2[data-v-27c5ae59]{font-size:13px;white-space:normal}.tactics-list.grid .tactic-status-tags[data-v-27c5ae59]{flex-wrap:wrap}.resize-handle[data-v-27c5ae59]{width:12px;cursor:col-resize;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:2}.resize-handle:active .resize-handle-grip[data-v-27c5ae59],.resize-handle:hover .resize-handle-grip[data-v-27c5ae59]{background:var(--accent);box-shadow:0 0 8px rgba(104,177,255,.35)}.resize-handle-grip[data-v-27c5ae59]{width:4px;height:48px;background:var(--border);border-radius:4px;transition:background .2s,box-shadow .2s}.tactic-item[data-v-27c5ae59]{background:hsla(0,0%,100%,.03);border:1px solid var(--border);border-radius:10px;padding:12px 14px;cursor:pointer;transition:all .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tactic-item[data-v-27c5ae59]:hover{background:hsla(0,0%,100%,.07)}.tactic-item.active[data-v-27c5ae59]{background:rgba(104,177,255,.08);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 4px 16px rgba(104,177,255,.12)}.tactic-item-top[data-v-27c5ae59]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.tactic-item-top h2[data-v-27c5ae59]{font-size:16px;margin:0;color:var(--ink);text-transform:capitalize;white-space:nowrap;flex:1}.tactic-item.active .tactic-item-top h2[data-v-27c5ae59]{color:var(--accent)}.tactic-item-bar[data-v-27c5ae59]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.technique-count[data-v-27c5ae59]{font-size:11px;color:var(--muted);background:hsla(0,0%,100%,.05);padding:2px 8px;border-radius:10px;border:1px solid var(--border);flex-shrink:0}.techniques-panel[data-v-27c5ae59]{min-width:0;overflow:hidden}.techniques-empty[data-v-27c5ae59]{display:flex;align-items:center;justify-content:center;height:100%;min-height:40vh;background:var(--card);border:1px solid var(--border);border-top:none;border-radius:0 0 12px 12px;backdrop-filter:blur(8px)}.empty-prompt[data-v-27c5ae59]{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--muted)}.empty-prompt svg[data-v-27c5ae59]{opacity:.4}.empty-prompt p[data-v-27c5ae59]{font-size:14px;margin:0}.techniques-panel-header[data-v-27c5ae59]{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--card);border:1px solid var(--border);border-top:none;border-bottom:2px solid var(--accent);border-radius:0;margin-bottom:0;backdrop-filter:blur(8px)}.techniques-panel-header h2[data-v-27c5ae59]{font-size:16px;margin:0;color:var(--accent);text-transform:capitalize}.tactic-status-tags[data-v-27c5ae59]{display:flex;gap:6px;flex-wrap:wrap}.status-tag[data-v-27c5ae59]{font-size:10px;font-weight:600;padding:2px 10px;border-radius:12px;white-space:nowrap}.status-tag.full[data-v-27c5ae59]{background:rgba(48,193,116,.2);color:#30c174}.status-tag.partial[data-v-27c5ae59]{background:rgba(49,113,181,.2);color:#68b1ff}.status-tag.available[data-v-27c5ae59]{background:rgba(227,107,55,.2);color:#f0935f}.status-tag.not-applicable[data-v-27c5ae59]{background:hsla(0,0%,100%,.12);color:hsla(0,0%,100%,.6)}.tbar[data-v-27c5ae59]{flex:1;height:10px;background:var(--track);border:1px solid var(--border);border-radius:999px;overflow:hidden}.tbar>.p[data-v-27c5ae59]{height:100%;background:var(--progress);transition:width .3s ease}.tbar-label[data-v-27c5ae59]{font-size:11px;color:var(--muted);min-width:50px;text-align:right}.view-toggle[data-v-27c5ae59]{display:flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.view-toggle-btn[data-v-27c5ae59]{background:transparent;border:none;color:var(--muted);padding:5px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.view-toggle-btn[data-v-27c5ae59]:first-child{border-right:1px solid var(--border)}.view-toggle-btn[data-v-27c5ae59]:hover{background:hsla(0,0%,100%,.08)}.view-toggle-btn.active[data-v-27c5ae59]{background:rgba(104,177,255,.15);color:var(--accent)}.tactic-techniques[data-v-27c5ae59]{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:8px;padding:12px;background:var(--card);border:1px solid var(--border);border-top:none;border-radius:0 0 12px 12px;max-height:calc(100vh - 420px);overflow-y:auto;backdrop-filter:blur(8px)}.tactic-techniques.list[data-v-27c5ae59]{grid-template-columns:1fr;gap:4px}.tactic-techniques.list .chip[data-v-27c5ae59]{font-size:15px;border-radius:6px;box-shadow:0 2px 6px rgba(2,6,23,.35)}.tactic-techniques.list .chip-content[data-v-27c5ae59]{padding:6px 10px}.chip[data-v-27c5ae59]{background:var(--chip);border:1px solid var(--chip-border);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:13px;color:var(--ink);box-shadow:0 4px 14px rgba(2,6,23,.45);transition:all .2s;cursor:pointer;overflow:hidden}.chip[data-v-27c5ae59]:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(2,6,23,.6)}.chip.not-applicable[data-v-27c5ae59]{background:var(--not-applicable);opacity:.6;cursor:default}.chip.not-applicable[data-v-27c5ae59]:hover{transform:none}.chip.available[data-v-27c5ae59]{border:2px solid var(--available);border-left:4px solid var(--available)}.chip.partial-coverage[data-v-27c5ae59]{border-left:4px solid var(--partial)}.chip.full-coverage[data-v-27c5ae59]{border-left:4px solid var(--full);background:rgba(48,193,116,.1)}.chip-content[data-v-27c5ae59]{display:flex;align-items:center;gap:10px;padding:10px}.chip-text[data-v-27c5ae59]{line-height:1.4;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;color:#e2e8f0;white-space:nowrap}.chip-meta[data-v-27c5ae59]{display:flex;align-items:center;gap:8px;flex-shrink:0}.chip-progress[data-v-27c5ae59]{flex:1;height:18px;display:flex;align-items:center;justify-content:center;background:rgba(48,193,116,.22);border:1px solid rgba(48,193,116,.35);border-radius:4px;transform:scaleX(1.4);transform-origin:center}.chip-progress .chip-progress-text[data-v-27c5ae59]{transform:scaleX(.857);transform-origin:center}.chip-progress.is-empty[data-v-27c5ae59]{background:hsla(0,0%,100%,.06);border-color:hsla(0,0%,100%,.12)}.chip-progress-text[data-v-27c5ae59]{font-size:11px;line-height:18px;text-align:center;font-weight:700;color:#5fd99a}.chip-progress.is-empty .chip-progress-text[data-v-27c5ae59]{color:hsla(0,0%,100%,.6)}.chip-gap-tag[data-v-27c5ae59]{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;white-space:nowrap;flex-shrink:0}.chip-gap-tag.no-coverage[data-v-27c5ae59]{background:rgba(173,42,42,.2);color:#ff5a5a}.chip-gap-tag.available[data-v-27c5ae59]{background:rgba(227,107,55,.2);color:#f0935f}.chip-gap-tag.partial[data-v-27c5ae59]{background:rgba(49,113,181,.2);color:#68b1ff}.bars-stack[data-v-27c5ae59]{position:fixed;left:0;right:0;bottom:0;padding:10px 16px;background:rgba(10,11,18,.92);backdrop-filter:blur(8px);border-top:1px solid var(--border);z-index:1000}.visbar[data-v-27c5ae59]{display:flex;gap:12px;align-items:center}.visbar-title[data-v-27c5ae59]{font-size:12px;color:var(--muted);min-width:140px}.visbar-track[data-v-27c5ae59]{flex:1;height:16px;background:var(--track);border:1px solid var(--border);border-radius:999px;overflow:hidden}.visbar-progress[data-v-27c5ae59]{height:100%;background:var(--full);transition:width .3s ease}.visbar-progress.total[data-v-27c5ae59]{background:var(--accent)}.visbar-progress.datasource[data-v-27c5ae59]{background:linear-gradient(90deg,#68b1ff,#30c174)}.visbar-perc[data-v-27c5ae59]{min-width:280px;text-align:right;font-size:12px;color:var(--ink);font-weight:600}.modal-overlay[data-v-27c5ae59]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.modal-content[data-v-27c5ae59]{background:#14151e;border:1px solid var(--border);border-radius:12px;max-width:800px;width:100%;max-height:85vh;overflow:auto;backdrop-filter:blur(8px)}.modal-header[data-v-27c5ae59]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border)}.modal-header h2[data-v-27c5ae59]{margin:0;font-size:18px;color:var(--ink)}.close-btn[data-v-27c5ae59]{background:none;border:none;color:var(--muted);font-size:32px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.close-btn[data-v-27c5ae59]:hover{color:var(--ink)}.modal-body[data-v-27c5ae59]{padding:20px}.coverage-summary[data-v-27c5ae59]{padding:16px;background:hsla(0,0%,100%,.04);border:1px solid var(--border);border-radius:10px;margin-bottom:20px}.coverage-stat[data-v-27c5ae59]{display:flex;justify-content:space-between;align-items:center}.coverage-label[data-v-27c5ae59]{font-size:14px;color:var(--muted)}.coverage-value[data-v-27c5ae59]{font-size:18px;font-weight:700;color:var(--full)}.type-coverage-section[data-v-27c5ae59]{background:hsla(0,0%,100%,.04);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:20px}.type-coverage-section h3[data-v-27c5ae59]{font-size:15px;color:var(--accent);margin:0 0 8px 0}.type-coverage-hint[data-v-27c5ae59]{font-size:12px;color:var(--muted);margin:0 0 12px}.type-coverage-list[data-v-27c5ae59]{display:flex;flex-direction:column;gap:8px}.type-coverage-row[data-v-27c5ae59]{display:flex;align-items:center;gap:10px}.type-coverage-label[data-v-27c5ae59]{min-width:160px;display:flex;align-items:center;gap:6px}.type-name[data-v-27c5ae59]{font-size:13px;font-weight:600;color:var(--ink)}.type-count[data-v-27c5ae59]{font-size:11px;color:var(--muted)}.type-coverage-bar[data-v-27c5ae59]{flex:1;height:10px;background:var(--track);border:1px solid var(--border);border-radius:5px;overflow:hidden}.type-coverage-fill[data-v-27c5ae59]{height:100%;border-radius:5px;transition:width .3s}.type-coverage-fill.full[data-v-27c5ae59]{background:var(--full)}.type-coverage-fill.partial[data-v-27c5ae59]{background:var(--available)}.type-coverage-fill.none[data-v-27c5ae59]{background:#ad2a2a}.type-coverage-pct[data-v-27c5ae59]{min-width:36px;text-align:right;font-size:12px;font-weight:700;color:var(--ink)}.gap-analysis-section[data-v-27c5ae59]{background:rgba(173,42,42,.06);border:1px solid rgba(173,42,42,.18);border-radius:10px;padding:16px;margin-bottom:20px}.gap-analysis-section h3[data-v-27c5ae59]{font-size:15px;color:#ff5a5a;margin:0 0 12px 0}.gap-analysis-section h4[data-v-27c5ae59]{font-size:13px;color:var(--ink);margin:12px 0 8px}.gap-hint[data-v-27c5ae59]{font-size:12px;color:var(--muted);margin:0 0 8px}.gap-loading[data-v-27c5ae59]{color:var(--muted);font-style:italic;padding:12px 0}.gap-datasource-list[data-v-27c5ae59]{display:flex;flex-direction:column;gap:6px}.gap-datasource-item[data-v-27c5ae59]{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;font-size:13px}.gap-datasource-item.actionable[data-v-27c5ae59]{background:rgba(227,107,55,.1);border:1px solid rgba(227,107,55,.2)}.gap-datasource-item.enabled[data-v-27c5ae59]{background:rgba(48,193,116,.1);border:1px solid rgba(48,193,116,.2)}.ds-name[data-v-27c5ae59]{flex:1;font-weight:600;color:var(--ink)}.ds-type[data-v-27c5ae59]{color:var(--muted)}.ds-quality[data-v-27c5ae59],.ds-type[data-v-27c5ae59]{font-size:11px;padding:2px 8px;border-radius:4px;background:hsla(0,0%,100%,.1)}.ds-quality[data-v-27c5ae59]{color:var(--accent)}.ds-status-tag[data-v-27c5ae59]{font-size:10px;font-weight:600;padding:3px 10px;border-radius:12px;color:#fff}.ds-status-tag.not-enabled[data-v-27c5ae59]{background:var(--available)}.ds-status-tag.enabled[data-v-27c5ae59]{background:var(--full)}.no-datasources[data-v-27c5ae59]{text-align:center;color:var(--muted);padding:16px}.no-datasources p[data-v-27c5ae59]{margin:0}.coverage-target[data-v-27c5ae59]{margin-top:12px;padding:10px 12px;background:rgba(104,177,255,.08);border:1px solid rgba(104,177,255,.18);border-radius:8px;display:flex;justify-content:space-between;align-items:center}.target-label[data-v-27c5ae59]{font-size:12px;color:var(--muted)}.target-value[data-v-27c5ae59]{font-size:13px;font-weight:600;color:var(--accent)}.detail-section[data-v-27c5ae59]{margin-bottom:20px}.detail-section h3[data-v-27c5ae59]{font-size:14px;color:var(--accent);margin:0 0 12px 0}.no-coverage[data-v-27c5ae59]{text-align:center;color:var(--muted);padding:20px}.info-text[data-v-27c5ae59]{color:var(--ink);padding:12px;text-align:center;line-height:1.6}.modal-actions[data-v-27c5ae59]{display:flex;gap:8px;margin-top:20px;padding-top:20px;border-top:1px solid var(--border)}.th-loading-center[data-v-27c5ae59]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:55vh;color:hsla(0,0%,100%,.8);font-weight:600;font-size:.95rem}.th-spinner[data-v-27c5ae59]{width:48px;height:48px;border:4px solid hsla(0,0%,100%,.15);border-top-color:#e36b37;border-radius:50%;animation:th-spin-27c5ae59 .8s linear infinite;display:inline-block}@keyframes th-spin-27c5ae59{to{transform:rotate(1turn)}}@media (max-width:900px){.master-detail[data-v-27c5ae59]{flex-direction:column}.resize-handle[data-v-27c5ae59]{display:none}.tactics-sidebar[data-v-27c5ae59]{width:100%!important;max-height:none;overflow-y:visible}.techniques-panel[data-v-27c5ae59]{width:100%!important}.tactics-list[data-v-27c5ae59]{max-height:none;flex-direction:row;flex-wrap:wrap;overflow-y:visible}.tactic-item[data-v-27c5ae59]{flex:1 1 auto;min-width:160px}.techniques-empty[data-v-27c5ae59]{min-height:20vh}.tactic-techniques[data-v-27c5ae59]{grid-template-columns:1fr;max-height:none}.chip-content[data-v-27c5ae59]{flex-direction:column;align-items:flex-start}.chip-text[data-v-27c5ae59]{white-space:normal}.chip-meta[data-v-27c5ae59]{width:100%}.header-controls[data-v-27c5ae59]{flex-direction:column}.visbar[data-v-27c5ae59]{flex-direction:column;gap:4px}.visbar-perc[data-v-27c5ae59]{min-width:auto;text-align:left}}