.gap-analysis[data-v-510582aa]{padding:2rem;max-width:1600px;margin:0 auto;background:#f5f7fa;min-height:100vh}.page-header[data-v-510582aa]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.page-header h1[data-v-510582aa]{font-size:2rem;color:#2c3e50;margin:0 0 .5rem 0}.subtitle[data-v-510582aa]{color:#7f8c8d;margin:0;font-size:1rem}.header-filters[data-v-510582aa]{display:flex;align-items:center;gap:.5rem;margin-top:1rem}.header-filters label[data-v-510582aa]{font-size:.9rem;color:#666;font-weight:500}.category-select[data-v-510582aa]{padding:.5rem 1rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;min-width:200px;background:#fff;cursor:pointer}.category-select[data-v-510582aa]:hover{border-color:#999}.category-select[data-v-510582aa]:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px rgba(52,152,219,.1)}.header-actions[data-v-510582aa]{display:flex;gap:1rem}.btn[data-v-510582aa]{padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s;text-decoration:none;display:inline-block;font-size:.95rem}.btn-primary[data-v-510582aa]{background:#3498db;color:#fff}.btn-primary[data-v-510582aa]:hover:not(:disabled){background:#2980b9}.btn-secondary[data-v-510582aa]{background:#95a5a6;color:#fff}.btn-secondary[data-v-510582aa]:hover:not(:disabled){background:#7f8c8d}.btn-outline[data-v-510582aa]{background:#fff;color:#3498db;border:2px solid #3498db}.btn-outline[data-v-510582aa]:hover:not(:disabled){background:#3498db;color:#fff}.btn-sm[data-v-510582aa]{padding:.5rem 1rem;font-size:.85rem}.btn[data-v-510582aa]:disabled{opacity:.5;cursor:not-allowed}.error-state[data-v-510582aa],.loading-state[data-v-510582aa],.no-gaps[data-v-510582aa],.no-results[data-v-510582aa]{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.loader[data-v-510582aa]{border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;width:50px;height:50px;animation:spin-510582aa 1s linear infinite;margin:0 auto 1rem}@keyframes spin-510582aa{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.metrics-summary[data-v-510582aa]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card[data-v-510582aa]{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.08);display:flex;align-items:center;gap:1.5rem;border-left:4px solid}.metric-card.total[data-v-510582aa]{border-left-color:#3498db}.metric-card.quick-wins[data-v-510582aa]{border-left-color:#f39c12}.metric-card.infrastructure[data-v-510582aa]{border-left-color:#95a5a6}.metric-icon[data-v-510582aa]{font-size:3rem}.metric-value[data-v-510582aa]{font-size:2.5rem;font-weight:700;color:#2c3e50;line-height:1}.metric-label[data-v-510582aa]{font-size:.95rem;color:#7f8c8d;font-weight:600;margin-top:.5rem}.metric-percentage[data-v-510582aa]{font-size:.85rem;color:#95a5a6;margin-top:.25rem}.recommendations-section[data-v-510582aa]{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:2rem}.section-title[data-v-510582aa]{font-size:1.5rem;color:#2c3e50;margin:0 0 .5rem 0;display:flex;align-items:center;gap:.75rem}.section-title .icon[data-v-510582aa]{font-size:1.75rem}.section-description[data-v-510582aa]{color:#7f8c8d;margin:0 0 1.5rem 0}.datasource-recommendations[data-v-510582aa]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.recommendation-card[data-v-510582aa]{border:2px solid #ecf0f1;border-radius:10px;padding:1.5rem;transition:all .3s;background:#fafbfc}.recommendation-card[data-v-510582aa]:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.recommendation-card.top-recommendation[data-v-510582aa]{border-color:#3498db;background:#ebf5fb}.recommendation-header[data-v-510582aa]{gap:1.5rem;margin-bottom:1rem}.recommendation-rank[data-v-510582aa]{background:#3498db;color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;flex-shrink:0}.recommendation-info h3[data-v-510582aa]{margin:0 0 .5rem 0;color:#2c3e50;font-size:1.25rem}.impact-badge[data-v-510582aa]{background:#27ae60;color:#fff;padding:.35rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600}.recommendation-details[data-v-510582aa]{display:flex;flex-direction:column;gap:.75rem;margin-left:56px}.detail-item[data-v-510582aa]{color:#2c3e50;font-size:.95rem}.tactics-list[data-v-510582aa]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.tactic-tag[data-v-510582aa]{background:#e8f4f8;color:#2c3e50;padding:.25rem .75rem;border-radius:6px;font-size:.85rem;font-weight:500}.tactic-tag.more[data-v-510582aa]{background:#ecf0f1;color:#7f8c8d}.recommendation-actions[data-v-510582aa]{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #ecf0f1}.modal-overlay[data-v-510582aa]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content[data-v-510582aa]{background:#fff;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.2);max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column}.modal-header[data-v-510582aa]{padding:1.5rem 2rem;border-bottom:2px solid #ecf0f1;display:flex;justify-content:space-between;align-items:center}.modal-header h2[data-v-510582aa]{margin:0;color:#2c3e50;font-size:1.5rem}.modal-close[data-v-510582aa]{background:none;border:none;font-size:1.5rem;color:#95a5a6;cursor:pointer;padding:.25rem .5rem;line-height:1;transition:color .2s}.modal-close[data-v-510582aa]:hover{color:#e74c3c}.modal-body[data-v-510582aa]{padding:2rem;overflow-y:auto;flex:1}.modal-stats[data-v-510582aa]{display:flex;gap:2rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:2px solid #ecf0f1}.stat[data-v-510582aa]{display:flex;flex-direction:column;align-items:center}.stat-value[data-v-510582aa]{font-size:2.5rem;font-weight:700;color:#3498db;line-height:1}.stat-label[data-v-510582aa]{margin-top:.5rem;color:#7f8c8d;font-size:.9rem;font-weight:600}.modal-search[data-v-510582aa]{margin-bottom:1.5rem}.techniques-modal-list[data-v-510582aa]{display:flex;flex-direction:column;gap:1rem;max-height:400px;overflow-y:auto}.technique-modal-item[data-v-510582aa]{border:2px solid #ecf0f1;border-radius:8px;padding:1rem;transition:all .2s}.technique-modal-item[data-v-510582aa]:hover{border-color:#3498db;background:#f8f9fa}.technique-modal-header[data-v-510582aa]{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.technique-modal-name[data-v-510582aa]{flex:1;font-weight:600;color:#2c3e50;font-size:1rem}.technique-modal-tactics[data-v-510582aa]{display:flex;flex-wrap:wrap;gap:.5rem}.modal-footer[data-v-510582aa]{padding:1.5rem 2rem;border-top:2px solid #ecf0f1;display:flex;gap:1rem;justify-content:flex-end}.modal-form[data-v-510582aa]{max-width:600px}.datasource-form[data-v-510582aa]{display:flex;flex-direction:column;gap:1.5rem}.form-group[data-v-510582aa]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-510582aa]{font-weight:600;color:#2c3e50;font-size:.95rem}.form-group label.required[data-v-510582aa]:after{content:" *";color:#e74c3c}.form-input[data-v-510582aa]{padding:.75rem 1rem;border:2px solid #ecf0f1;border-radius:8px;font-size:.95rem;transition:all .2s;font-family:inherit}.form-input[data-v-510582aa]:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px rgba(52,152,219,.1)}.form-input[data-v-510582aa]:-moz-read-only{background:#f8f9fa;color:#7f8c8d;cursor:not-allowed}.form-input[data-v-510582aa]:read-only{background:#f8f9fa;color:#7f8c8d;cursor:not-allowed}.form-textarea[data-v-510582aa]{resize:vertical;min-height:80px}.form-hint[data-v-510582aa]{color:#7f8c8d;font-size:.85rem;margin-top:.25rem}.form-error[data-v-510582aa]{background:#fee;border:2px solid #e74c3c;color:#c0392b;padding:1rem;border-radius:8px;font-size:.9rem}select.form-input[data-v-510582aa]{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%237f8c8d' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.filters-section[data-v-510582aa]{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:2rem}.filters[data-v-510582aa]{display:flex;flex-direction:column;gap:1.5rem}.filter-group[data-v-510582aa]{display:flex;align-items:center;gap:1rem}.filter-group label[data-v-510582aa]{font-weight:600;color:#2c3e50;min-width:60px}.filter-buttons[data-v-510582aa]{display:flex;gap:.5rem;flex-wrap:wrap}.filter-btn[data-v-510582aa]{padding:.5rem 1rem;border:2px solid #ecf0f1;background:#fff;border-radius:8px;cursor:pointer;font-weight:600;color:#7f8c8d;transition:all .2s}.filter-btn[data-v-510582aa]:hover{border-color:#3498db;color:#3498db}.filter-btn.active[data-v-510582aa]{background:#3498db;color:#fff;border-color:#3498db}.search-input[data-v-510582aa]{flex:1;padding:.75rem 1rem;border:2px solid #ecf0f1;border-radius:8px;font-size:.95rem;transition:all .2s}.search-input[data-v-510582aa]:focus{outline:none;border-color:#3498db}.gaps-section[data-v-510582aa]{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:2rem}.section-header[data-v-510582aa]{margin-bottom:2rem}.section-header h2[data-v-510582aa]{font-size:1.5rem;color:#2c3e50;margin:0 0 .5rem 0;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.count-badge[data-v-510582aa]{background:#ecf0f1;color:#2c3e50;padding:.25rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600}.techniques-list[data-v-510582aa]{display:grid;gap:1.5rem}.quick-wins-section .techniques-list[data-v-510582aa]{grid-template-columns:repeat(auto-fill,minmax(500px,1fr))}.infrastructure-section .techniques-list[data-v-510582aa]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.technique-card-enhanced[data-v-510582aa]{border:2px solid;border-radius:10px;overflow:hidden;transition:all .3s;background:#fff}.technique-card-enhanced[data-v-510582aa]:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.12)}.technique-card-enhanced.detectable[data-v-510582aa]{border-color:#f39c12;background:#fef9f0}.technique-card-enhanced.not-applicable[data-v-510582aa]{border-color:#bdc3c7;background:#f8f9fa}.technique-main[data-v-510582aa]{padding:1.5rem}.technique-header[data-v-510582aa]{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.technique-header.infrastructure-header[data-v-510582aa]{justify-content:space-between;align-items:center;margin-bottom:.75rem}.technique-id-badge[data-v-510582aa]{background:#2c3e50;color:#fff;padding:.35rem .75rem;border-radius:6px;font-family:monospace;font-weight:700;font-size:.9rem;flex-shrink:0}.technique-name[data-v-510582aa]{flex:1;margin:0;color:#2c3e50;font-size:1.15rem;font-weight:600;line-height:1.4}.technique-name.full-width[data-v-510582aa]{flex:none;width:100%;margin-bottom:1rem;font-size:1.05rem}.status-badge[data-v-510582aa]{padding:.35rem .85rem;border-radius:6px;font-size:.85rem;font-weight:600;white-space:nowrap;flex-shrink:0}.status-badge.quick-win[data-v-510582aa]{background:#f39c12;color:#fff}.status-badge.infrastructure[data-v-510582aa]{background:#95a5a6;color:#fff}.technique-meta[data-v-510582aa]{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:1rem;background:#fff;border-radius:8px}.meta-item[data-v-510582aa]{display:flex;align-items:flex-start;gap:.75rem;flex-wrap:wrap;font-size:.95rem;color:#2c3e50}.platform-chip[data-v-510582aa],.tactic-chip[data-v-510582aa]{background:#e8f4f8;color:#2c3e50;padding:.25rem .65rem;border-radius:6px;font-size:.85rem;font-weight:500}.platform-chip[data-v-510582aa]{background:#f0f3f4}.action-instructions[data-v-510582aa]{background:#fff8e6;border:2px solid #f39c12;border-radius:8px;padding:1.25rem;margin-top:1rem}.instructions-header[data-v-510582aa]{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#2c3e50;font-size:1rem}.audit-options[data-v-510582aa]{display:flex;flex-direction:column;gap:1rem}.audit-option[data-v-510582aa]{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#fff;padding:1rem;border-radius:8px;border:1px solid #f39c12}.audit-title[data-v-510582aa]{font-weight:600;color:#2c3e50;margin-bottom:.35rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.audit-category[data-v-510582aa]{background:#3498db;color:#fff;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.audit-datasource[data-v-510582aa]{font-size:.9rem;color:#7f8c8d}.recommendation-info[data-v-510582aa]{background:#f0f3f4;border:2px solid #95a5a6;border-radius:8px;padding:1.25rem;margin-top:1rem}.recommendation-header[data-v-510582aa]{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:#2c3e50;font-size:1rem}.datasource-types[data-v-510582aa]{display:flex;flex-wrap:wrap;gap:.5rem}.datasource-type-chip[data-v-510582aa]{background:#3498db;color:#fff;padding:.35rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600}.technique-actions[data-v-510582aa]{padding:0 1.5rem 1.5rem;display:flex;gap:.5rem}.pagination[data-v-510582aa]{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid #ecf0f1}.pagination-info[data-v-510582aa]{color:#7f8c8d;font-size:.95rem}.success-icon[data-v-510582aa]{font-size:4rem;margin-bottom:1rem}.no-gaps h3[data-v-510582aa],.no-results h3[data-v-510582aa]{color:#27ae60;margin-bottom:.5rem}.no-gaps p[data-v-510582aa],.no-results p[data-v-510582aa]{color:#7f8c8d;margin-bottom:1.5rem}.no-results .icon[data-v-510582aa]{font-size:3rem;margin-bottom:1rem}@media (max-width:1400px){.datasource-recommendations[data-v-510582aa]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.infrastructure-section .techniques-list[data-v-510582aa]{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}@media (max-width:1024px){.technique-header[data-v-510582aa]{flex-wrap:wrap}.audit-option[data-v-510582aa]{flex-direction:column;align-items:flex-start}.datasource-recommendations[data-v-510582aa]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.quick-wins-section .techniques-list[data-v-510582aa]{grid-template-columns:1fr}.infrastructure-section .techniques-list[data-v-510582aa]{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.gap-analysis[data-v-510582aa]{padding:1rem}.page-header[data-v-510582aa]{flex-direction:column;gap:1rem}.header-actions[data-v-510582aa]{width:100%}.filter-group[data-v-510582aa]{flex-direction:column;align-items:flex-start}.metrics-summary[data-v-510582aa]{grid-template-columns:1fr}.recommendation-details[data-v-510582aa]{margin-left:0}.datasource-recommendations[data-v-510582aa],.infrastructure-section .techniques-list[data-v-510582aa],.quick-wins-section .techniques-list[data-v-510582aa]{grid-template-columns:1fr}.modal-overlay[data-v-510582aa]{padding:1rem}.modal-content[data-v-510582aa]{max-height:95vh}.modal-body[data-v-510582aa],.modal-footer[data-v-510582aa],.modal-header[data-v-510582aa]{padding:1rem}.modal-stats[data-v-510582aa]{flex-direction:column;gap:1rem}.recommendation-actions[data-v-510582aa]{flex-direction:column}}