@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap);.user-profile-dropdown{animation:slideUp .2s ease-out;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);bottom:calc(100% + 8px);box-shadow:var(--shadow-dark-xl);display:flex;flex-direction:column;left:var(--space-4);max-height:500px;overflow:hidden;position:absolute;right:var(--space-4);z-index:1000}.profile-dropdown-header{align-items:center;background:linear-gradient(135deg,var(--color-primary-600) 0,var(--color-primary-700) 100%);border-bottom:1px solid var(--color-border-primary);display:flex;gap:var(--space-3);padding:var(--space-4)}.profile-avatar{align-items:center;background:#fff3;border:2px solid #ffffff4d;border-radius:50%;display:flex;height:48px;justify-content:center;width:48px}.profile-avatar i{color:#fff;font-size:var(--font-size-xl)}.profile-info{display:flex;flex-direction:column;gap:2px}.profile-name{color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.profile-email{color:#fffc}.profile-email,.profile-role{font-size:var(--font-size-xs)}.profile-role{background:#ffffff26;border-radius:var(--radius-full);color:#ffffffb3;margin-top:2px;padding:2px 8px;width:-webkit-fit-content;width:fit-content}.profile-role.admin{background:#ef44444d;color:#fecaca}.profile-tabs{background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-primary);display:flex}.profile-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-text-secondary);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);gap:4px;padding:var(--space-3);transition:all var(--transition-fast)}.profile-tab:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.profile-tab.active{background:var(--color-surface);border-bottom-color:var(--color-primary-500);color:var(--color-primary-400)}.profile-tab i{font-size:var(--font-size-sm)}.profile-content{flex:1 1;max-height:280px;overflow-y:auto}.profile-tab-content{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.profile-field{display:flex;flex-direction:column;gap:4px}.profile-field label{color:var(--color-text-tertiary);font-size:var(--font-size-xs);letter-spacing:.05em;text-transform:uppercase}.profile-value{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.role-badge{border-radius:var(--radius-full);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;padding:2px 10px}.role-badge.admin{background:#ef444426;color:#ef4444}.role-badge.user{background:#3b82f626;color:#3b82f6}.setting-item{align-items:center;background:var(--color-background-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);display:flex;justify-content:space-between;padding:var(--space-3)}.setting-item.sub-setting{background:var(--color-background-tertiary);border-style:dashed;margin-left:var(--space-4)}.setting-label{align-items:center;display:flex;gap:var(--space-3)}.setting-label i{color:var(--color-primary-400);font-size:var(--font-size-sm);text-align:center;width:20px}.setting-label>div{display:flex;flex-direction:column;gap:2px}.setting-title{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.setting-description{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.toggle-switch{flex-shrink:0}.toggle-slider{background-color:var(--color-background-tertiary);border:1px solid var(--color-border-primary)}.toggle-slider,.toggle-slider:before{transition:all var(--transition-fast)}.toggle-slider:before{background-color:var(--color-text-tertiary);bottom:2px;left:2px}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-primary-500);border-color:var(--color-primary-600)}.toggle-switch input:checked+.toggle-slider:before{background-color:#fff}.setting-select{background:var(--color-background-tertiary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-sm);min-width:100px;padding:var(--space-2) var(--space-3)}.setting-select:focus{border-color:var(--color-primary-500);outline:none}.setting-input{background:var(--color-background-tertiary);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);text-align:center;width:80px}.setting-input:focus{border-color:var(--color-primary-500);outline:none}.profile-dropdown-footer{background:var(--color-background-secondary);border-top:1px solid var(--color-border-primary);display:flex;gap:var(--space-2);padding:var(--space-3)}.save-btn{align-items:center;background:var(--color-primary-600);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;flex:1 1;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-2);justify-content:center;padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.save-btn:hover:not(:disabled){background:var(--color-primary-700)}.save-btn:disabled{cursor:not-allowed;opacity:.7}.logout-dropdown-btn{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:var(--radius-md);color:#ef4444;cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.logout-dropdown-btn:hover{background:#ef444433;border-color:#ef444480}.profile-content::-webkit-scrollbar{width:6px}.profile-content::-webkit-scrollbar-track{background:var(--color-background-secondary)}.profile-content::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:3px}.profile-content::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary)}.layout{background-color:var(--color-background);display:flex;height:100vh;overflow:hidden}.logo{align-items:center;color:var(--color-text-primary);display:flex;font-family:var(--font-family-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);gap:var(--space-3);letter-spacing:-.025em;text-decoration:none}.logo i{color:var(--color-primary-400);font-size:var(--font-size-2xl)}.nav-item i{font-size:var(--font-size-base);text-align:center;transition:color var(--transition-fast);width:20px}.nav-item span{font-size:var(--font-size-sm);letter-spacing:.025em}.nav-separator{background:var(--color-border-primary);height:1px;margin:var(--space-4) var(--space-6);opacity:.5}.nav-submenu{background:#0000;border-left:2px solid var(--color-border-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;margin:var(--space-1) 0 var(--space-2) 0;margin-left:var(--space-6);padding-left:var(--space-4)}.nav-subitem{align-items:center;border-left:none;color:var(--color-text-tertiary);display:flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);gap:var(--space-3);margin:0;padding:var(--space-2) var(--space-4);position:relative;text-decoration:none;transition:all var(--transition-fast)}.nav-subitem:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.nav-subitem.active{background:#8b5cf626;color:#a78bfa;font-weight:var(--font-weight-semibold)}.nav-subitem i{font-size:var(--font-size-xs);text-align:center;transition:color var(--transition-fast);width:16px}.nav-subitem span{font-size:var(--font-size-xs);letter-spacing:.025em}.project-submenu{margin:var(--space-1) 0}.project-header{cursor:pointer;-webkit-user-select:none;user-select:none}.project-header .project-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-header .submenu-toggle{transition:transform var(--transition-fast)}.submenu-items{border-left:2px solid var(--color-border-primary);margin-left:var(--space-6);margin-top:var(--space-1);padding-left:var(--space-4)}.submenu-item{border-left:none;font-size:var(--font-size-xs);margin:0;padding:var(--space-2) var(--space-4)}.submenu-item i{font-size:var(--font-size-xs);width:16px}.submenu-item.active{background:#8b5cf61a;border-left:none;color:#a78bfa}.submenu-item.active:before{display:none}.submenu-item:hover{background:var(--color-surface-hover);border-left:none}.user-info{align-items:center;border-radius:var(--radius-lg);cursor:pointer;display:flex;flex:1 1;gap:var(--space-3);padding:var(--space-3);transition:all var(--transition-fast)}.user-info:hover{background:var(--color-surface-hover)}.user-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border:2px solid var(--color-border-primary);border-radius:50%;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);height:36px;justify-content:center;width:36px}.user-avatar,.user-avatar i{color:var(--color-text-primary)}.user-avatar i{font-size:var(--font-size-base)}.user-details{display:flex;flex:1 1;flex-direction:column;gap:var(--space-1)}.user-name{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.user-name,.user-role{line-height:var(--line-height-tight);margin:0}.user-role{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.logout-btn{align-items:center;background:#dc26261a;border:1px solid #dc26264d;border-radius:var(--radius-lg);color:#fca5a5;cursor:pointer;display:flex;height:36px;justify-content:center;padding:var(--space-2);transition:all var(--transition-fast);width:36px}.logout-btn:hover{background:#dc262633;border-color:#dc262680;color:var(--color-text-primary);transform:translateY(-1px)}.logout-btn i{font-size:var(--font-size-base)}.main-content{background-color:var(--color-background)}.main-header{align-items:flex-start;height:auto;min-height:auto;padding:var(--space-6) var(--space-6) var(--space-5) var(--space-6)}.header-content{gap:var(--space-4);max-width:100%;width:100%}.header-title-section{display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);min-width:0;overflow:visible}.page-title{color:var(--color-text-primary);font-family:var(--font-family-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:-.025em;margin:0}.header-actions{gap:var(--space-3)}@media (max-width:1024px){.sidebar{width:260px}.main-content{margin-left:260px}.content-wrapper{padding:1.5rem}}@media (max-width:768px){.sidebar{transform:translateX(-100%);transition:transform .3s ease;width:100%}.sidebar.open{transform:translateX(0)}.main-content{margin-left:0}.main-header{padding:1rem 1.5rem}.page-title{font-size:1.5rem}.content-wrapper{padding:1rem}.header-content{align-items:flex-start;flex-direction:column;gap:1rem}.header-actions{justify-content:flex-end;width:100%}}@media (max-width:480px){.user-details{display:none}.sidebar-footer{justify-content:center}.nav-item span{font-size:.875rem}.logo span{font-size:1.125rem}}.loading-spinner{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);gap:var(--space-4);justify-content:center;min-height:200px;padding:var(--space-8)}.loading-spinner-sm{min-height:120px;padding:var(--space-6)}.loading-spinner-lg{min-height:300px;padding:var(--space-12)}.spinner{animation:spin 1s linear infinite;border:4px solid var(--color-border-primary);border-radius:50%;border-top-color:var(--color-primary-500);height:48px;width:48px}.loading-spinner-sm .spinner{border-width:3px;height:32px;width:32px}.loading-spinner-lg .spinner{border-width:5px;height:64px;width:64px}.security-loading{overflow:hidden;position:relative}.security-loading:before{animation:progress 2s ease-in-out infinite;background:linear-gradient(90deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);content:"";height:3px;left:0;position:absolute;right:0;top:0}.vulnerability-loading{border-left:4px solid var(--color-critical)}.vulnerability-loading .spinner{border-top-color:var(--color-critical)}.network-loading{border-left:4px solid var(--color-info)}.network-loading .spinner{border-top-color:var(--color-info)}.loading-text{line-height:var(--line-height-relaxed);text-align:center}.loading-title{margin-bottom:var(--space-2);text-align:center}.skeleton-list{flex-direction:column}.skeleton-item,.skeleton-list{display:flex;gap:var(--space-3);padding:var(--space-4)}.skeleton-item{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg)}.skeleton-avatar{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-background-secondary) 25%,var(--color-surface-hover) 50%,var(--color-background-secondary) 75%);background-size:200% 100%}.skeleton-content{display:flex;flex-direction:column;gap:var(--space-2)}.skeleton-line{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-background-secondary) 25%,var(--color-surface-hover) 50%,var(--color-background-secondary) 75%);background-size:200% 100%;border-radius:var(--radius-base);height:1em}.skeleton-line.medium{width:80%}.skeleton-line.long{width:100%}.loading-progress{height:6px;margin-top:var(--space-4)}.loading-progress-bar{transition:width var(--transition-base)}.loading-dots{display:flex;margin-top:var(--space-2)}.loading-dot{height:8px;width:8px}@media (max-width:768px){.loading-spinner{min-height:150px;padding:var(--space-6)}.loading-spinner-lg{min-height:200px;padding:var(--space-8)}.spinner{border-width:3px;height:40px;width:40px}.loading-text{font-size:var(--font-size-sm)}.loading-title{font-size:var(--font-size-base)}}@media (prefers-contrast:high){.spinner{border-color:var(--color-text-primary);border-top-color:var(--color-primary-500)}.skeleton-avatar,.skeleton-line{background:var(--color-text-primary);opacity:.3}}@media (prefers-reduced-motion:reduce){.loading-dot,.skeleton-avatar,.skeleton-line,.spinner{animation:none}.loading-progress-bar{transition:none}}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{left:0;position:absolute;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.leaflet-tile::selection{background:#0000}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{height:1600px;-webkit-transform-origin:0 0;width:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-height:none!important;max-width:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-height:none!important;max-width:none!important;padding:0;width:auto}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;height:0;width:0;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{height:1px;width:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{pointer-events:visiblePainted;pointer-events:auto;position:relative;z-index:800}.leaflet-bottom,.leaflet-top{pointer-events:none;position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{clear:both;float:left}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;color:#000;display:block;height:26px;line-height:26px;text-align:center;text-decoration:none;width:26px}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.leaflet-bar a.leaflet-disabled{background-color:#f4f4f4;color:#bbb;cursor:default}.leaflet-touch .leaflet-bar a{height:30px;line-height:30px;width:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);height:36px;width:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{height:44px;width:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{background:#fff;color:#333;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{overflow-x:hidden;overflow-y:scroll;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;line-height:1.4;padding:0 5px}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;height:.6669em;vertical-align:initial!important;width:1em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{background:#fffc;border:2px solid #777;border-top:none;box-sizing:border-box;line-height:1.1;padding:2px 5px 1px;text-shadow:1px 1px #fff;white-space:nowrap}.leaflet-control-scale-line:not(:first-child){border-bottom:none;border-top:2px solid #777;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{margin-bottom:20px;position:absolute;text-align:center}.leaflet-popup-content-wrapper{border-radius:12px;padding:1px;text-align:left}.leaflet-popup-content{font-size:13px;font-size:1.08333em;line-height:1.3;margin:13px 24px 13px 20px;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{height:20px;left:50%;margin-left:-20px;margin-top:-1px;overflow:hidden;pointer-events:none;position:absolute;width:40px}.leaflet-popup-tip{height:17px;margin:-10px auto 0;padding:1px;pointer-events:auto;transform:rotate(45deg);width:17px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px #0006;color:#333}.leaflet-container a.leaflet-popup-close-button{background:#0000;border:none;color:#757575;font:16px/24px Tahoma,Verdana,sans-serif;height:24px;position:absolute;right:0;text-align:center;text-decoration:none;top:0;width:24px}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678);margin:0 auto;width:24px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{background-color:#fff;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 3px #0006;color:#222;padding:6px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;white-space:nowrap}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{background:#0000;border:6px solid #0000;content:"";pointer-events:none;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{border-top-color:#fff;bottom:0;margin-bottom:-12px}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-left:-6px;margin-top:-12px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;left:0;margin-left:-12px}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}textarea.form-input{font-family:inherit;line-height:1.5;min-height:100px;resize:vertical}@media (max-width:640px){.modal-overlay{padding:.5rem}.modal-content{max-height:95vh}.modal-header{padding:1rem 1rem .75rem}.modal-header h2{font-size:1.125rem}.modal-form{padding:1rem}.form-group{margin-bottom:1rem}.form-group:last-of-type{margin-bottom:1.5rem}.modal-actions{flex-direction:column-reverse;gap:.5rem}.btn{justify-content:center;width:100%}}.modal-content{animation:slideIn .2s ease-out}.modal-header{border-bottom:1px solid #f3f4f6;padding:1.5rem 1.5rem 1rem}.modal-close{background:#0000;transition:all .2s ease-in-out}.error-message{background-color:#fef2f2;padding:.75rem 1rem}.form-group:last-of-type{margin-bottom:2rem}.form-label{font-weight:600}.form-input{box-sizing:border-box;transition:all .2s ease-in-out}.form-input:focus{box-shadow:0 0 0 2px #3b82f61a}select.form-input{cursor:pointer}.form-help{color:#6b7280;line-height:1.4;margin-top:.5rem}.form-checkbox{align-items:flex-start;border:1px solid #e5e7eb;border-radius:6px;gap:.75rem;padding:.75rem;transition:all .2s ease-in-out}.form-checkbox:hover{background-color:#f9fafb;border-color:#d1d5db}.form-checkbox input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;flex-shrink:0;height:18px;width:18px}.checkbox-label{flex:1 1;flex-direction:column;gap:.25rem}.checkbox-label strong{color:#374151;font-size:.875rem;font-weight:600}.checkbox-label small{line-height:1.4}.modal-actions{border-top:1px solid #f3f4f6;padding-top:1rem}.btn i.fa-spinner{animation:spin 1s linear infinite}@media (max-width:640px){.modal-overlay{padding:.5rem}.modal-content{max-height:95vh}.modal-header{padding:1rem 1rem .75rem}.modal-header h2{font-size:1.125rem}.modal-form{padding:1rem}.form-group{margin-bottom:1rem}.form-group:last-of-type{margin-bottom:1.5rem}.form-checkbox{padding:.5rem}.modal-actions{flex-direction:column-reverse;gap:.5rem}.btn{justify-content:center;width:100%}}.modal-content:focus{outline:none}body.modal-open{overflow:hidden}.scan-comparison-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.scan-comparison-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:92vh;max-width:1600px;overflow-y:auto;width:98%}.comparison-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;color:#fff;display:flex;justify-content:space-between;padding:2rem}.comparison-header h2{align-items:center;display:flex;font-size:1.5rem;font-weight:600;gap:.75rem;margin:0}.close-btn{background:#fff3;border-radius:50%;height:40px;width:40px}.close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.comparison-actions{background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;gap:1rem;padding:1.5rem 2rem}.btn-primary:hover{box-shadow:0 4px 12px #3b82f666}.btn-secondary:hover{background:#4b5563;box-shadow:0 4px 12px #6b728066;transform:translateY(-1px)}.report-preview{background:#f8fafc;padding:2rem}.comparison-summary{padding:2rem}.summary-grid{grid-gap:1.5rem;gap:1.5rem}.summary-card{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-left:4px solid #3b82f6;transition:all .2s ease}.summary-card:hover{box-shadow:0 8px 25px #0000001a}.summary-card h3{color:#6b7280;font-size:.875rem;font-weight:500;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.summary-value{font-size:2.5rem;margin-bottom:.5rem}.conclusion-preview{background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:12px;color:#fff;margin-top:2rem;padding:2rem}.conclusion-preview h3{font-size:1.25rem;font-weight:600;margin:0 0 1rem}.conclusion-preview p{line-height:1.6;margin:0;opacity:.95}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem 2rem;text-align:center}.error-container p,.loading-container p{color:#6b7280;font-size:1.125rem;margin:0}@media (max-width:768px){.scan-comparison-modal{padding:1rem}.comparison-header{padding:1.5rem}.comparison-header h2{font-size:1.25rem}.comparison-actions{flex-direction:column;padding:1rem 1.5rem}.comparison-summary{padding:1.5rem}.summary-grid{gap:1rem;grid-template-columns:1fr}.summary-value{font-size:2rem}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.scan-comparison-content{animation:modalSlideIn .3s ease-out}.scan-comparison-content::-webkit-scrollbar{width:8px}.scan-comparison-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.scan-comparison-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.scan-comparison-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.fa-spinner.fa-spin{animation:spin 1s linear infinite}.btn:active{transform:translateY(0)}.btn:disabled{box-shadow:none!important}.chart-container{margin:1rem 0;padding:1rem}.report-preview iframe{box-shadow:0 4px 6px #0000001a;transition:all .2s ease}.report-preview iframe:hover{box-shadow:0 8px 25px #00000026}.project-detail{margin:0 auto;max-width:1200px;padding:2rem}.project-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem}.project-info{flex:1 1}.breadcrumb{background-color:initial;border:1px solid #d1d5db;border-radius:6px;color:#374151;padding:.5rem 1rem;transition:all .2s ease-in-out}.breadcrumb:hover{background-color:#f9fafb;border-color:#9ca3af;text-decoration:none}.project-info h1{color:#111827;font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 .5rem}.project-info p{color:#6b7280;font-size:1rem;line-height:1.5;margin:0}.project-actions{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.5rem}.project-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:2rem}.stat-item{border:1px solid #e5e7eb;box-shadow:0 1px 3px 0 #0000001a;gap:.75rem;padding:1rem}.stat-item i{align-items:center;background-color:#f3f4f6;border-radius:6px;color:#6b7280;display:flex;font-size:.875rem;height:24px;justify-content:center;width:24px}.stat-item span{color:#111827;font-weight:600}.project-content{grid-gap:2rem;display:grid;gap:2rem}.project-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a;padding:1.5rem}.section-header{border-bottom:1px solid #f3f4f6}.targets-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.target-card{padding:1rem;transition:all .2s ease-in-out}.target-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000001a}.target-header{align-items:flex-start;margin-bottom:.75rem}.target-header h4{color:#111827;flex:1 1;font-size:1rem;font-weight:600;margin:0 1rem 0 0}.target-address{margin:0 0 .75rem;word-break:break-all}.target-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.type-badge{background-color:#f3f4f6;color:#374151;padding:.25rem .5rem;text-transform:uppercase}.alive-test{color:#10b981;font-size:.75rem;gap:.25rem}.alive-test,.scan-item{align-items:center;display:flex}.scan-item{gap:1rem;justify-content:space-between;padding:1rem;transition:all .2s ease-in-out}.scan-item:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000001a}.scan-info h4{color:#111827;font-size:1rem;font-weight:600;margin:0 0 .25rem}.scan-info p{color:#6b7280;font-size:.875rem;line-height:1.4;margin:0 0 .5rem}.scan-meta{align-items:center;color:#9ca3af;font-size:.75rem}.view-all-link{align-items:center;border:2px dashed #d1d5db;border-radius:8px;display:flex;gap:.5rem;justify-content:center;transition:all .2s ease-in-out}.view-all-link:hover{background-color:#eff6ff;border-color:#3b82f6;text-decoration:none}.error{color:#ef4444;height:200px}.btn{border:1px solid;gap:.375rem;transition:all .2s ease-in-out}.btn:hover{text-decoration:none}.btn-outline:hover:not(:disabled){color:#374151}.btn-danger:hover:not(:disabled){background-color:#dc2626}@media (max-width:768px){.project-detail{padding:1rem}.project-header{flex-direction:column;gap:1rem}.project-actions{justify-content:stretch;width:100%}.project-actions .btn{flex:1 1;justify-content:center}.project-stats{gap:.75rem;grid-template-columns:repeat(2,1fr)}.targets-grid{grid-template-columns:1fr}.section-header{gap:1rem}.scan-item,.section-header{align-items:flex-start;flex-direction:column}.scan-meta{gap:.5rem}}.stats-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(4,1fr)}.stats-grid .stat-card{background:#fff;border:1px solid #e5e7eb;gap:1rem;padding:1.25rem}.stats-grid .stat-card,.stats-grid .stat-icon{align-items:center;border-radius:12px;display:flex}.stats-grid .stat-icon{font-size:1.25rem;height:48px;justify-content:center;width:48px}.stats-grid .stat-icon.targets{background:#eff6ff;color:#3b82f6}.stats-grid .stat-icon.scans{background:#ecfdf5;color:#10b981}.stats-grid .stat-icon.running{background:#fef3c7;color:#f59e0b}.stats-grid .stat-icon.vulns{background:#fef2f2;color:#ef4444}.stats-grid .stat-content{display:flex;flex-direction:column}.stats-grid .stat-value{color:#111827;font-size:1.5rem;font-weight:700}.stats-grid .stat-label{color:#6b7280;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.severity-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.severity-section h3{align-items:center;color:#374151;display:flex;font-size:1rem;font-weight:600;margin:0 0 1rem}.severity-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(5,1fr)}.severity-card{border-radius:8px;padding:1rem;text-align:center}.severity-card.critical{background:#fef2f2;border:1px solid #fee2e2}.severity-card.high{background:#fff7ed;border:1px solid #fed7aa}.severity-card.medium{background:#fefce8;border:1px solid #fef08a}.severity-card.low{background:#eff6ff;border:1px solid #bfdbfe}.severity-card.info{background:#f9fafb;border:1px solid #e5e7eb}.severity-count{display:block;font-size:1.5rem}.severity-card.critical .severity-count{color:#dc2626}.severity-card.high .severity-count{color:#ea580c}.severity-card.medium .severity-count{color:#ca8a04}.severity-card.low .severity-count{color:#2563eb}.severity-card.info .severity-count{color:#6b7280}.severity-label{color:#6b7280;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.map-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.map-section h3{align-items:center;color:#374151;display:flex;font-size:1rem;font-weight:600;margin:0 0 1rem}.evolution-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.evolution-section h3{align-items:center;color:#374151;display:flex;font-size:1rem;font-weight:600;margin:0 0 1rem}.quick-links-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.quick-links-section h3{align-items:center;color:#374151;display:flex;font-size:1rem;font-weight:600;margin:0 0 1rem}.quick-links{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.quick-link{align-items:center;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;color:#374151;display:flex;gap:.75rem;padding:1rem 1.25rem;text-decoration:none;transition:all .2s}.quick-link:hover{background:#eff6ff;border-color:#3b82f6;text-decoration:none}.quick-link i{color:#3b82f6;font-size:1.25rem}.quick-link span{font-weight:500}.quick-link .count{background:#e5e7eb;border-radius:4px;font-size:.75rem;font-weight:600;margin-left:auto;padding:.25rem .5rem}.recent-scans-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.recent-scans-section h3{align-items:center;color:#374151;display:flex;font-size:1rem;font-weight:600;margin:0 0 1rem}.scans-table table{border-collapse:collapse;width:100%}.scans-table td,.scans-table th{border-bottom:1px solid #e5e7eb;padding:.75rem 1rem;text-align:left}.scans-table th{background:#f9fafb;color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.scans-table td a{color:#3b82f6;font-weight:500;text-decoration:none}.scans-table td a:hover{text-decoration:underline}.view-all-link{border-top:1px solid #e5e7eb;color:#3b82f6;display:block;font-weight:500;margin-top:.5rem;padding:1rem;text-align:center;text-decoration:none}.view-all-link:hover{background:#f8fafc}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.severity-cards{grid-template-columns:repeat(3,1fr)}}@media (max-width:640px){.stats-grid{grid-template-columns:1fr}.severity-cards{grid-template-columns:repeat(2,1fr)}.quick-links{grid-template-columns:1fr}}.bulk-import-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.bulk-import-modal{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.modal-header{background-color:#f8fafc}.modal-header h2{font-size:1.5rem;font-weight:700}.close-button{background-color:#f3f4f6;color:#6b7280;font-size:1.25rem;height:32px;transition:all .2s ease;width:32px}.close-button:hover{background-color:#e5e7eb;color:#374151}.modal-footer{background-color:#f8fafc}.bulk-import-step{display:flex;flex-direction:column;gap:1.5rem}.step-header h3{align-items:center;color:#111827;display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0 0 .5rem}.step-header h3 i{color:#3b82f6}.step-header p{color:#6b7280;font-size:.875rem;margin:0}.input-section{display:flex;flex-direction:column;gap:1rem}.targets-textarea{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-family:Monaco,Consolas,monospace;font-size:.875rem;line-height:1.5;min-height:300px;padding:1rem;resize:vertical;transition:border-color .2s ease;width:100%}.targets-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.targets-textarea::placeholder{color:#9ca3af}.input-options{display:flex;flex-direction:column;gap:1rem}.checkbox-label{align-items:flex-start;border:1px solid #e5e7eb;border-radius:8px;gap:.75rem;padding:.75rem;transition:all .2s ease}.checkbox-label:hover{background-color:#f9fafb;border-color:#d1d5db}.checkbox-label input[type=checkbox]{cursor:pointer;height:18px;margin-top:.125rem;width:18px}.checkbox-label span{color:#374151;font-weight:500}.checkbox-label small{color:#6b7280;display:block;font-size:.75rem;margin-top:.25rem}.format-help{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:1rem}.format-help h4{align-items:center;color:#0369a1;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;margin:0 0 .75rem}.format-examples{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.format-item{color:#0369a1;font-size:.75rem}.format-item strong{display:inline-block;font-weight:600;width:80px}.format-item code{background-color:#e0f2fe;border-radius:4px;font-family:Monaco,Consolas,monospace;padding:.125rem .25rem}.import-summary{border:1px solid #e2e8f0}.summary-stats{flex-wrap:wrap;gap:1.5rem;justify-content:center}.stat-item{gap:.25rem}.stat-item.success .stat-value{color:#10b981}.stat-item.error .stat-value{color:#dc2626}.stat-item.warning .stat-value{color:#f59e0b}.targets-preview{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.preview-header{background-color:#f8fafc;border-bottom:1px solid #e5e7eb;padding:.75rem 1rem}.preview-header h4{color:#374151;font-size:.875rem;font-weight:600;margin:0}.targets-list{max-height:400px}.target-preview-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:1rem;transition:background-color .2s ease}.target-preview-item:last-child{border-bottom:none}.target-preview-item.valid{background-color:#f0fdf4;border-left:3px solid #10b981}.target-preview-item.invalid{background-color:#fef2f2;border-left:3px solid #dc2626}.target-preview-item.duplicate{background-color:#fefbf2;border-left:3px solid #f59e0b}.target-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.target-badges{display:flex;flex-wrap:wrap;gap:.5rem}.type-badge{align-items:center;border:1px solid;border-radius:12px;display:inline-flex;gap:.25rem;padding:.125rem .5rem}.type-badge.type-single{background-color:#eff6ff;border-color:#bfdbfe;color:#3b82f6}.type-badge.type-hostname{background-color:#f0fdf4;border-color:#bbf7d0;color:#10b981}.type-badge.type-range{background-color:#fefbf2;border-color:#fde68a;color:#f59e0b}.type-badge.type-cidr{background-color:#f5f3ff;border-color:#c4b5fd;color:#8b5cf6}.alive-badge,.hosts-badge{align-items:center;background-color:#f3f4f6;border-radius:12px;color:#6b7280;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.125rem .5rem}.target-address{font-family:Monaco,Consolas,monospace;margin-bottom:.25rem}.target-error,.target-warning{align-items:center;display:flex;font-size:.75rem;gap:.5rem;margin-top:.5rem}.target-error{color:#dc2626}.target-warning{color:#f59e0b}.target-status{font-size:1.25rem}.import-progress{align-items:center;display:flex;flex-direction:column;gap:1rem}.progress-bar{background-color:#e5e7eb}.progress-fill{background-color:#3b82f6}.progress-text{color:#111827;font-size:1.125rem;font-weight:600}.import-status{align-items:center;color:#6b7280;font-size:1rem;gap:.75rem}.import-results{display:flex;flex-direction:column;gap:1.5rem}.results-summary{gap:2rem;justify-content:center}.result-stat{border-radius:8px;gap:.5rem;min-width:120px;padding:1rem}.result-stat.success{background-color:#f0fdf4;border:1px solid #bbf7d0}.result-stat.error{background-color:#fef2f2;border:1px solid #fecaca}.result-value{font-size:2rem;font-weight:700}.result-stat.success .result-value{color:#10b981}.result-stat.error .result-value{color:#dc2626}.result-label{color:#6b7280;font-size:.875rem;font-weight:500;text-align:center}.failed-imports{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem}.failed-imports h4{color:#dc2626;font-size:1rem;font-weight:600;margin:0 0 1rem}.failed-list{display:flex;flex-direction:column;gap:.75rem}.failed-item{background-color:#fff;border:1px solid #fecaca;border-radius:6px;padding:.75rem}.failed-target{color:#111827;font-weight:600;margin-bottom:.25rem}.failed-target span{color:#6b7280;font-family:Monaco,Consolas,monospace;font-weight:400}.failed-error{color:#dc2626;font-size:.875rem;gap:.5rem}.failed-error,.success-message{align-items:center;display:flex}.success-message{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#10b981;font-size:1rem;font-weight:500;gap:.75rem;justify-content:center;padding:1rem}.btn-secondary{background-color:#fff;border:1px solid #d1d5db;color:#374151}.btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}@media (max-width:768px){.bulk-import-modal{margin:.5rem;max-width:95vw}.summary-stats{gap:1rem}.stat-item{min-width:60px}.stat-value{font-size:1.25rem}.target-header{align-items:flex-start;flex-direction:column;gap:.5rem}.results-summary{flex-direction:column;gap:1rem}.modal-footer{flex-direction:column-reverse}.btn{justify-content:center}}.project-targets{display:flex;flex-direction:column;gap:var(--space-6)}.project-targets.error,.project-targets.loading{align-items:center;display:flex;justify-content:center;min-height:400px}.loading-spinner{color:var(--color-text-secondary);gap:var(--space-3)}.loading-spinner i{color:var(--color-primary-500)}.targets-header{flex-wrap:wrap;gap:var(--space-4)}.search-bar{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);display:flex;flex:1 1;gap:var(--space-2);max-width:400px;padding:var(--space-2) var(--space-4)}.search-bar i{color:var(--color-text-tertiary)}.search-bar input{background:#0000;border:none;color:var(--color-text-primary);flex:1 1;font-size:var(--font-size-sm);outline:none}.search-bar input::placeholder{color:var(--color-text-tertiary)}.targets-stats{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{gap:var(--space-3);padding:var(--space-4)}.stat-card>i{color:var(--color-primary-500);font-size:1.5rem;opacity:.8}.stat-value{font-size:var(--font-size-xl)}.stat-label{font-size:var(--font-size-xs)}.targets-table-container{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg)}.targets-table th{background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-primary);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;padding:var(--space-3) var(--space-4);text-transform:uppercase;-webkit-user-select:none;user-select:none}.targets-table th:hover{background:var(--color-surface-hover)}.targets-table th i{font-size:var(--font-size-xs);margin-left:var(--space-1)}.targets-table td{border-bottom:1px solid var(--color-border-primary);color:var(--color-text-primary);font-size:var(--font-size-sm);padding:var(--space-3) var(--space-4)}.targets-table tr:last-child td{border-bottom:none}.targets-table tr:hover{background:var(--color-surface-hover)}.targets-table tr.selected{background:#3b82f61a}.checkbox-col{text-align:center;width:40px}.target-name{align-items:center;display:flex;gap:var(--space-2)}.target-name i{color:var(--color-primary-500)}.target-value code{background:var(--color-background-tertiary);font-family:var(--font-family-mono)}.criticality-badge,.env-badge,.target-value code,.type-badge{border-radius:var(--radius-sm);font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2)}.criticality-badge,.env-badge,.type-badge{display:inline-block;font-weight:var(--font-weight-medium);text-transform:capitalize}.type-badge{background:#3b82f61a;color:var(--color-primary-400)}.type-badge.ip{background:#8b5cf61a;color:#a78bfa}.type-badge.cidr{background:#ec48991a;color:#f472b6}.type-badge.domain{background:#10b9811a;color:#34d399}.type-badge.url{background:#f59e0b1a;color:#fbbf24}.env-badge{background:#6b72801a;color:var(--color-text-secondary)}.env-badge.production{background:#ef44441a;color:#f87171}.env-badge.staging{background:#f59e0b1a;color:#fbbf24}.env-badge.development{background:#10b9811a;color:#34d399}.criticality-badge{background:#6b72801a;color:var(--color-text-secondary)}.criticality-badge.critical{background:#ef44441a;color:#f87171}.criticality-badge.high{background:#f59e0b1a;color:#fbbf24}.criticality-badge.medium{background:#3b82f61a;color:var(--color-primary-400)}.criticality-badge.low{background:#10b9811a;color:#34d399}.actions-col{display:flex;gap:var(--space-1)}@media (max-width:768px){.targets-header{align-items:stretch;flex-direction:column}.search-bar{max-width:100%}.header-actions{justify-content:flex-end}.targets-table-container{overflow-x:auto}.targets-table{min-width:700px}}.project-scans{display:flex;flex-direction:column;gap:var(--space-6)}.project-scans.error,.project-scans.loading{align-items:center;display:flex;justify-content:center;min-height:400px}.scans-header{flex-wrap:wrap;gap:var(--space-4)}.filter-tabs{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-1)}.filter-tab,.filter-tabs{display:flex;gap:var(--space-2)}.filter-tab{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.filter-tab:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.filter-tab.active{background:var(--color-primary-500);color:#fff}.filter-tab i{font-size:var(--font-size-xs)}.empty-state{border-radius:var(--radius-lg);padding:var(--space-12)}.empty-state i{color:var(--color-text-tertiary);margin-bottom:var(--space-4)}.empty-state h3{margin:0 0 var(--space-2)}.empty-state p{margin:0 0 var(--space-4)}.scans-grid{grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.scan-card{border-radius:var(--radius-lg);padding:var(--space-4);transition:all var(--transition-fast)}.scan-card:hover{border-color:var(--color-primary-500);box-shadow:var(--shadow-dark-lg)}.scan-header{margin-bottom:var(--space-3)}.scan-info{display:flex;flex-direction:column;gap:var(--space-2)}.scan-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0}.scan-actions,.status-badge{gap:var(--space-1)}.status-badge{border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:var(--space-1) var(--space-2)}.status-badge.success{background:#10b9811a;color:#34d399}.status-badge.info{background:#3b82f61a;color:var(--color-primary-400)}.status-badge.warning{background:#f59e0b1a;color:#fbbf24}.status-badge.danger{background:#ef44441a;color:#f87171}.status-badge.secondary{background:#6b72801a;color:var(--color-text-secondary)}.scan-meta{gap:var(--space-4);margin-bottom:var(--space-3)}.meta-item{color:var(--color-text-secondary);font-size:var(--font-size-xs);gap:var(--space-2)}.meta-item i{color:var(--color-text-tertiary)}.scan-progress{align-items:center;display:flex;gap:var(--space-2)}.progress-bar{background:var(--color-background-tertiary);flex:1 1;height:6px}.progress-bar,.progress-fill{border-radius:var(--radius-full)}.progress-fill{background:linear-gradient(90deg,var(--color-primary-500),var(--color-primary-400))}.progress-text{color:var(--color-primary-400);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);min-width:40px;text-align:right}.scan-results-summary{grid-gap:var(--space-2);border-top:1px solid var(--color-border-primary);display:grid;gap:var(--space-2);grid-template-columns:repeat(4,1fr);padding-top:var(--space-3)}.result-stat{align-items:center;display:flex;flex-direction:column;gap:var(--space-1)}.result-stat .count{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.result-stat .label{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.result-stat.critical .count{color:#f87171}.result-stat.high .count{color:#fbbf24}.result-stat.medium .count{color:var(--color-primary-400)}.result-stat.low .count{color:#34d399}.btn-icon{background:#0000;border:1px solid var(--color-border-primary);border-radius:var(--radius-md);color:var(--color-text-secondary);padding:var(--space-1) var(--space-2);transition:all var(--transition-fast)}.btn-icon:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.btn-icon.btn-warning:hover{background:#f59e0b1a;border-color:#f59e0b4d;color:#fbbf24}.btn-icon.btn-danger:hover{background:#ef44441a;border-color:#ef44444d;color:#f87171}@media (max-width:768px){.scans-header{align-items:stretch;flex-direction:column}.filter-tabs{justify-content:flex-start;overflow-x:auto}.scans-grid{grid-template-columns:1fr}}.scans{margin:0 auto;max-width:1200px;padding:2rem}.scans-header{margin-bottom:2rem}.scans-header h1{color:#111827;font-size:2rem;font-weight:700;margin:0}.scans-filters{align-items:center;display:flex;gap:1rem}.form-select{background:#fff;border-radius:8px;color:#374151;min-width:150px;padding:.75rem 1rem;transition:all .2s ease}.scans-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:2rem}.stat-card{transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 4px 6px #0000001a}.stat-value{color:#3b82f6}.stat-label{color:var(--color-text-secondary);letter-spacing:.025em}.scans-group{margin-bottom:3rem}.group-header{align-items:center;border-bottom:2px solid #e5e7eb;color:#111827;display:flex;font-size:1.5rem;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.75rem}.group-header i{font-size:1.25rem}.scans-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.scan-card{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:12px;box-shadow:var(--shadow-dark-sm);padding:1.5rem;transition:all .2s ease}.scan-card:hover{border-color:#3b82f6;box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.scan-title{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem}.scan-title h3{color:var(--color-text-primary);flex:1 1;font-size:1.25rem;font-weight:600;margin:0 1rem 0 0}.status-badge{padding:.5rem .875rem}.status-pending{background-color:#f59e0b1a}.status-running{background-color:#3b82f61a}.status-paused{background-color:#8b5cf61a}.status-completed{background-color:#10b9811a}.status-failed{background-color:#ef44441a}.status-cancelled,.status-stopped{background-color:#6b72801a}.status-interrupted{background-color:#f973161a;color:#f97316}.scan-project{margin-bottom:1rem}.project-link{align-items:center;color:var(--color-text-secondary);display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;text-decoration:none;transition:color .2s ease}.project-link:hover{color:#3b82f6}.scan-description{color:var(--color-text-secondary);font-size:.875rem;margin-bottom:1rem}.scan-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.scan-meta>div{align-items:center;color:var(--color-text-tertiary);display:flex;font-size:.75rem;font-weight:500;gap:.375rem}.scan-meta i{color:#3b82f6}.scan-dates{border-top:1px solid #f3f4f6;margin-bottom:1.5rem;padding-top:1rem}.scan-dates>div{margin-bottom:.25rem}.scan-dates small{color:#9ca3af;font-size:.75rem}.scan-actions{align-items:center}.scan-actions a,.scan-actions button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:500;gap:.375rem;padding:.5rem .875rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.scan-actions button:disabled{cursor:not-allowed;opacity:.6}.empty-state h2{color:#374151;font-size:1.5rem;margin:0 0 1rem}.empty-state p{line-height:1.5;margin:0 auto 2rem;max-width:500px}.btn{padding:.875rem 1.75rem}.btn-primary:hover{box-shadow:0 4px 6px #3b82f640}.btn-sm{padding:.5rem .875rem}.loading{font-size:1.1rem;height:200px}@media (max-width:768px){.scans{padding:1rem}.scans-header{align-items:flex-start;flex-direction:column;gap:1rem}.scans-grid{grid-template-columns:1fr}.scans-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.scan-title{align-items:flex-start;flex-direction:column;gap:.5rem}.scan-title h3{margin-right:0}.scan-meta{flex-direction:column;gap:.5rem}.scan-actions{justify-content:stretch}.scan-actions a,.scan-actions button{flex:1 1;justify-content:center;min-width:0}}@media (max-width:480px){.scans-header h1{font-size:1.5rem}.group-header{font-size:1.25rem}.scan-actions{flex-direction:column}.scan-actions a,.scan-actions button{width:100%}}.scan-progress{padding:1.5rem}.progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.progress-header h3{align-items:center;color:var(--text-dark);display:flex;gap:.5rem;margin:0}.progress-percentage{color:var(--primary-blue);font-size:1.25rem;font-weight:700}.progress-bar{background:var(--border);height:12px;margin-bottom:1.5rem}.progress-bar,.progress-fill{border-radius:6px}.progress-details{grid-gap:.75rem;display:grid;gap:.75rem;margin-bottom:1.5rem}.progress-item{align-items:center;display:flex;justify-content:space-between}.progress-item label{color:var(--text-dark);font-weight:500}.scan-config h4{color:var(--text-dark);font-size:1rem;margin-bottom:1rem}.config-grid{grid-gap:.5rem;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.config-item{color:var(--text-light)}.config-item i{color:var(--primary-blue);text-align:center;width:1rem}@keyframes blinkOrange{0%,50%{opacity:1}51%,to{opacity:.3}}.target-active-blink{animation:blinkOrange 1.5s infinite}.target-active-icon{color:#f97316!important}.result-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a;overflow:hidden;transition:all .2s ease-in-out}.result-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.result-card.expanded{border-color:#3b82f6;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.result-header{align-items:center;border-bottom:1px solid #0000;cursor:pointer;display:flex;justify-content:space-between;padding:1rem 1.5rem;transition:all .2s ease-in-out}.result-header:hover{background-color:#f9fafb}.result-card.expanded .result-header{background-color:#f8fafc;border-bottom-color:#e2e8f0}.result-title{flex:1 1;min-width:0}.result-icon,.result-title{align-items:center;display:flex}.result-icon{background-color:#f3f4f6;border-radius:8px;color:#6b7280;flex-shrink:0;height:40px;justify-content:center;margin-right:1rem;width:40px}.result-info{flex:1 1;min-width:0}.result-info h4{color:#111827;font-size:1rem;font-weight:600;line-height:1.4;margin:0 0 .25rem;word-break:break-word}.result-meta{align-items:center;color:#6b7280;display:flex;flex-wrap:wrap;font-size:.875rem;gap:1rem}.host-info,.service-info{align-items:center;display:flex;font-family:Monaco,Menlo,Ubuntu Mono,monospace;gap:.25rem}.host-info i,.service-info i{text-align:center;width:12px}.result-badges{align-items:center;display:flex;flex-shrink:0;gap:.75rem}.severity-badge{letter-spacing:.05em;white-space:nowrap}.severity-badge.false-positive{background-color:#f3f4f6;border:1px solid #d1d5db;color:#6b7280;opacity:.6;text-decoration:line-through}.false-positive-btn{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#9ca3af;cursor:pointer;display:flex;font-size:.875rem;height:32px;justify-content:center;transition:all .2s ease-in-out;width:32px}.false-positive-btn:hover{background-color:#e5e7eb;border-color:#9ca3af;color:#6b7280}.false-positive-btn:disabled{cursor:not-allowed;opacity:.6}.false-positive-btn.marked{background-color:#f3e8ff;border-color:#a855f7;color:#7c3aed}.false-positive-btn.marked:hover{background-color:#e9d5ff;border-color:#7c3aed;color:#6d28d9}.result-card.false-positive{background-color:#fafafa;opacity:.7}.result-card.false-positive .result-header{background-color:#f5f5f5}.result-card.false-positive .result-info h4{color:#6b7280;text-decoration:line-through}.expand-icon{color:#9ca3af;margin-left:.5rem;transition:all .2s ease-in-out}.result-card.expanded .expand-icon{color:#3b82f6;transform:rotate(180deg)}.result-details{animation:slideDown .2s ease-out;background-color:#f8fafc;border-top:1px solid #e2e8f0;padding:1.5rem}.result-description,.result-evidence,.result-references,.result-screenshot,.result-solution{margin-bottom:1.5rem}.result-description:last-child,.result-evidence:last-child,.result-references:last-child,.result-screenshot:last-child,.result-solution:last-child{margin-bottom:1rem}.result-details h5{color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin:0 0 .5rem;text-transform:uppercase}.result-description p,.result-solution p{color:#4b5563;line-height:1.6;margin:0}.evidence-text{background-color:#1f2937;border-radius:6px;color:#f9fafb;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.5;margin:0;overflow-x:auto;padding:1rem;white-space:pre-wrap;word-break:break-all}.references-list{gap:.5rem}.references-list a{transition:color .2s ease-in-out;word-break:break-all}.references-list a:hover{color:#2563eb}.screenshot-image{border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:auto;max-width:100%;transition:transform .2s ease-in-out}.screenshot-image:hover{box-shadow:0 4px 8px #00000026;transform:scale(1.02)}.result-footer{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.result-footer small{color:#9ca3af;font-size:.75rem}@media (max-width:768px){.result-header{padding:.75rem 1rem}.result-title{align-items:flex-start;flex-direction:column;gap:.5rem}.result-icon{height:32px;margin-right:.75rem;width:32px}.result-info h4{font-size:.875rem}.result-meta{font-size:.75rem;gap:.5rem}.result-badges{align-self:flex-start;margin-top:.5rem}.severity-badge{font-size:.625rem;padding:.25rem .5rem}.result-details{padding:1rem}.evidence-text{font-size:.75rem;padding:.75rem}}@media print{.result-card{border:1px solid #000;box-shadow:none;margin-bottom:1rem;page-break-inside:avoid}.result-header{background-color:#f5f5f5!important}.result-details{background-color:initial!important}.evidence-text{background-color:#f5f5f5!important;border:1px solid #ccc;color:#000!important}.expand-icon{display:none}}.result-filters{margin-bottom:1.5rem;padding:1rem}.filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.filters-header h4{color:var(--text-dark);margin:0}.filters-content{grid-gap:1rem;display:grid;gap:1rem}.filter-label{color:var(--text-dark);font-size:.875rem;font-weight:500}.filter-checkboxes{align-items:center;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important}.filter-checkbox{flex-shrink:0;gap:.25rem;white-space:nowrap}.filter-checkbox input[type=checkbox]{margin:0}.vuln-type-badge{background:var(--background);border-radius:4px;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:uppercase}.filter-toggles{border-top:1px solid #e5e7eb;border-top:1px solid var(--color-border-primary,#e5e7eb);margin-top:.5rem;padding-top:1rem}.toggle-options{display:flex;flex-wrap:wrap;gap:1rem}.toggle-option{align-items:center;background:#f8fafc;background:var(--color-surface-hover,#f8fafc);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);border-radius:6px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem .75rem;transition:all .2s ease}.toggle-option:hover{background:#fff;background:var(--color-surface,#fff);border-color:#60a5fa;border-color:var(--color-primary-400,#60a5fa)}.toggle-option input[type=checkbox]{cursor:pointer;height:16px;margin:0;width:16px}.toggle-option input[type=checkbox]:checked+.toggle-label{color:#3b82f6;color:var(--color-primary-500,#3b82f6)}.toggle-label{color:#64748b;color:var(--color-text-secondary,#64748b);font-size:.8125rem;font-weight:500;gap:.375rem}.toggle-label i{font-size:.75rem}@media (max-width:768px){.filters-content{grid-template-columns:1fr}.toggle-options{flex-direction:column}}.bulk-actions-bar{align-items:center;animation:slideDown .3s ease-out;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 20px}.bulk-actions-info{align-items:center;display:flex;font-weight:500;gap:10px}.bulk-actions-info i{color:gold;font-size:18px}.bulk-actions-buttons{display:flex;gap:10px}.bulk-actions-buttons .btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;text-decoration:none;transition:all .2s ease}.bulk-actions-buttons .btn:hover:not(:disabled){box-shadow:0 4px 8px #0003;transform:translateY(-1px)}.bulk-actions-buttons .btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.bulk-actions-buttons .btn-warning{background-color:#f39c12;color:#fff}.bulk-actions-buttons .btn-warning:hover:not(:disabled){background-color:#e67e22}.bulk-actions-buttons .btn-success{background-color:#27ae60;color:#fff}.bulk-actions-buttons .btn-success:hover:not(:disabled){background-color:#229954}.bulk-actions-buttons .btn-secondary{background-color:#6c757d;color:#fff}.bulk-actions-buttons .btn-secondary:hover:not(:disabled){background-color:#5a6268}.modal-overlay{animation:fadeIn .2s ease-out;z-index:1050}.modal-dialog{animation:slideUp .3s ease-out;background:#fff;border-radius:8px;box-shadow:0 10px 30px #0000004d;max-height:90vh;max-width:500px;overflow:hidden;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content{height:100%}.modal-header{background-color:#f8f9fa;border-bottom:1px solid #dee2e6;padding:20px}.modal-title{color:#333;font-size:18px;font-weight:600}.btn-close{border-radius:4px;color:#6c757d;font-size:18px;padding:4px;transition:all .2s ease}.btn-close:hover:not(:disabled){background-color:#e9ecef;color:#333}.modal-body{padding:20px}.modal-body p{color:#555;line-height:1.5;margin-bottom:16px}.form-group label{color:#333;margin-bottom:6px}.form-control{border:1px solid #ced4da;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-control:disabled{background-color:#f8f9fa;opacity:.6}.modal-footer{background-color:#f8f9fa;border-top:1px solid #dee2e6;gap:10px;padding:20px}.modal-footer .btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;text-decoration:none;transition:all .2s ease}.modal-footer .btn:hover:not(:disabled){box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.modal-footer .btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.modal-footer .btn-secondary{background-color:#6c757d;color:#fff}.modal-footer .btn-secondary:hover:not(:disabled){background-color:#5a6268}.modal-footer .btn-warning{background-color:#f39c12;color:#fff}.modal-footer .btn-warning:hover:not(:disabled){background-color:#e67e22}.modal-footer .btn-success{background-color:#27ae60;color:#fff}.modal-footer .btn-success:hover:not(:disabled){background-color:#229954}@media (max-width:768px){.bulk-actions-bar{align-items:stretch;flex-direction:column;gap:12px}.bulk-actions-buttons{flex-wrap:wrap;justify-content:center}.modal-dialog{margin:10px;width:calc(100% - 20px)}.modal-body,.modal-footer,.modal-header{padding:16px}}@media (max-width:480px){.bulk-actions-buttons .btn{font-size:12px;padding:6px 12px}.bulk-actions-buttons .btn i{font-size:14px}}.scan-results{padding:0}.results-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.results-header h3{color:#111827;font-size:1.5rem;font-weight:600;margin:0}.results-controls{align-items:center;display:flex;gap:1rem}.form-select{background-color:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:border-color .2s}.form-select:hover{border-color:#9ca3af}.form-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.results-content{min-height:200px}.results-group{margin-bottom:2rem}.group-header{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:1.125rem;font-weight:600;margin:0 0 1rem;padding:.75rem 1rem}.severity-badge{font-size:.875rem;gap:.375rem;letter-spacing:.025em;padding:.375rem .75rem}.severity-critical{background-color:#fef2f2;border:1px solid #fecaca}.severity-high{background-color:#fff7ed;border:1px solid #fed7aa}.severity-medium{background-color:#fefce8;border:1px solid #fef3c7;color:#ca8a04}.severity-low{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#65a30d}.severity-info{background-color:#eff6ff;border:1px solid #dbeafe;color:#2563eb}.host-badge{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:20px;color:#374151;display:inline-flex;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;font-weight:500;gap:.375rem;padding:.375rem .75rem}.results-list{grid-gap:1rem;gap:1rem}.no-results{padding:4rem 2rem}.no-results i{font-size:4rem}.no-results p{font-size:1rem;margin:0 auto;max-width:400px}@media (max-width:768px){.results-header{align-items:flex-start;flex-direction:column;gap:1rem}.results-controls{justify-content:flex-start;width:100%}.form-select{flex:1 1;min-width:0}.group-header{font-size:1rem;padding:.5rem .75rem}.host-badge,.severity-badge{font-size:.75rem;padding:.25rem .5rem}}.results-list{animation:fadeIn .3s ease-in-out}.results-group:hover .group-header{background-color:#f1f5f9;border-color:#cbd5e1;transition:all .2s ease-in-out}.results-controls .btn{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.375rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease}.results-controls .btn:hover{background-color:#f9fafb;border-color:#9ca3af}.results-controls .btn-primary{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.results-controls .btn-primary:hover{background-color:#2563eb;border-color:#2563eb}.results-controls .btn-outline-primary{background-color:initial;border-color:#3b82f6;color:#3b82f6}.results-controls .btn-outline-primary:hover{background-color:#3b82f6;color:#fff}.bulk-selection-controls{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.bulk-selection-actions{align-items:center;display:flex;gap:.75rem}.bulk-selection-actions .btn-sm{font-size:.8125rem;padding:.375rem .75rem}.bulk-selection-actions .btn-outline-primary{background-color:initial;border-color:#3b82f6;color:#3b82f6}.bulk-selection-actions .btn-outline-primary:hover:not(:disabled){background-color:#3b82f6;color:#fff}.bulk-selection-actions .btn-outline-secondary{background-color:initial;border-color:#6b7280;color:#6b7280}.bulk-selection-actions .btn-outline-secondary:hover:not(:disabled){background-color:#6b7280;color:#fff}.bulk-selection-actions .btn:disabled{cursor:not-allowed;opacity:.5}.result-item-wrapper{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:1rem}.result-checkbox{align-items:center;display:flex;padding-top:1.25rem}.result-checkbox .form-check-input{accent-color:#3b82f6;cursor:pointer;height:1.125rem;margin:0;width:1.125rem}.result-checkbox .form-check-label{cursor:pointer;margin:0}.result-card-container{flex:1 1;transition:all .2s ease}.result-card-container.with-checkbox{margin-left:0}.results-list{grid-gap:0;display:grid;gap:0}@media (max-width:768px){.bulk-selection-actions{align-items:stretch;flex-direction:column}.bulk-selection-actions .btn-sm{justify-content:center}.result-item-wrapper{gap:.5rem}.result-checkbox{padding-top:1rem}.results-controls .btn{font-size:.75rem;padding:.375rem .75rem}}@media (max-width:480px){.bulk-selection-controls{padding:.75rem}.result-checkbox .form-check-input{height:1rem;width:1rem}}.scan-console-collapsed{margin-bottom:1rem}.scan-console-toggle-btn{align-items:center;background:linear-gradient(135deg,#1f2937,#374151);border:1px solid #4b5563;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1rem;position:relative;transition:all .2s ease}.scan-console-toggle-btn:hover{background:linear-gradient(135deg,#374151,#4b5563);border-color:#6b7280;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.console-message-count{background:#3b82f6;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;min-width:1.5rem;padding:.125rem .5rem;text-align:center}.scan-console{background:#1a1a1a;border:1px solid #333;border-radius:12px;box-shadow:0 8px 32px #0000004d;margin-bottom:2rem;overflow:hidden}.scan-console-header{align-items:center;background:linear-gradient(135deg,#2d3748,#1a202c);border-bottom:1px solid #4a5568;display:flex;justify-content:space-between;padding:1rem 1.5rem}.console-header-left{align-items:center;display:flex;gap:1rem}.console-title{align-items:center;color:#e2e8f0;display:flex;font-size:1rem;font-weight:600;gap:.5rem}.console-title i{color:#4ade80}.console-loading{color:#3b82f6!important;margin-left:.5rem}.console-stats{color:#a0aec0;font-size:.875rem}.console-header-right{align-items:center;display:flex;gap:.75rem}.console-search{align-items:center;display:flex;position:relative}.console-search i{color:#718096;font-size:.875rem;left:.75rem;position:absolute}.console-search-input{background:#2d3748;border:1px solid #4a5568;border-radius:6px;color:#e2e8f0;font-size:.875rem;padding:.5rem .75rem .5rem 2rem;transition:all .2s ease;width:200px}.console-search-input:focus{border-color:#4ade80;box-shadow:0 0 0 3px #4ade801a;outline:none}.console-search-input::placeholder{color:#718096}.console-filter{background:#2d3748;border:1px solid #4a5568;border-radius:6px;color:#e2e8f0;cursor:pointer;font-size:.875rem;padding:.5rem .75rem;transition:all .2s ease}.console-filter:focus{border-color:#4ade80;box-shadow:0 0 0 3px #4ade801a;outline:none}.console-autoscroll-btn,.console-export-btn,.console-minimize-btn{align-items:center;background:#0000;border:1px solid #4a5568;border-radius:6px;color:#a0aec0;cursor:pointer;display:flex;height:2.5rem;justify-content:center;padding:.5rem;transition:all .2s ease;width:2.5rem}.console-autoscroll-btn:hover,.console-export-btn:hover,.console-minimize-btn:hover{background:#4a5568;border-color:#718096;color:#e2e8f0}.console-autoscroll-btn.active{background:#4ade80;border-color:#4ade80;color:#1a202c}.console-export-btn:disabled{cursor:not-allowed;opacity:.5}.console-export-btn:disabled:hover{background:#0000;border-color:#4a5568;color:#a0aec0}.scan-console-content{background:#1a1a1a;font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;height:400px;line-height:1.5;overflow-y:auto}.scan-console-content::-webkit-scrollbar{width:8px}.scan-console-content::-webkit-scrollbar-track{background:#2d3748}.scan-console-content::-webkit-scrollbar-thumb{background:#4a5568;border-radius:4px}.scan-console-content::-webkit-scrollbar-thumb:hover{background:#718096}.console-empty{align-items:center;color:#718096;display:flex;height:100%;justify-content:center}.console-empty-message{padding:2rem;text-align:center}.console-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.console-empty-message p{margin:.5rem 0}.console-empty-subtitle{font-size:.875rem;opacity:.7}.console-messages{padding:1rem}.console-message{background:#2d37484d;border-left:4px solid #4a5568;border-radius:6px;margin-bottom:.75rem;padding:.75rem;transition:all .2s ease}.console-message:hover{background:#2d374880}.console-message-header{align-items:center;display:flex;font-size:.75rem;gap:1rem;margin-bottom:.5rem;opacity:.8}.console-timestamp{color:#a0aec0;font-weight:500}.console-engine{background:#4ade801a;border-radius:4px;color:#4ade80;font-weight:600;padding:.125rem .5rem}.console-type{color:#cbd5e0;font-weight:500}.console-message-content{color:#e2e8f0;line-height:1.4;white-space:pre-wrap;word-break:break-word}.console-output-error{background:#f565651a;border-left-color:#f56565}.console-output-error .console-message-content{color:#feb2b2}.console-output-warning{background:#ed89361a;border-left-color:#ed8936}.console-output-warning .console-message-content{color:#fbd38d}.console-output-info{background:#4299e11a;border-left-color:#4299e1}.console-output-info .console-message-content{color:#90cdf4}.console-output-stdout{background:#48bb781a;border-left-color:#48bb78}.console-output-stdout .console-message-content{color:#9ae6b4}.console-output-stderr{background:#ed64a61a;border-left-color:#ed64a6}.console-output-stderr .console-message-content{color:#f687b3}.console-output-default{background:#a0aec01a;border-left-color:#a0aec0}.scan-console-footer{align-items:center;background:#2d3748;border-top:1px solid #4a5568;display:flex;font-size:.875rem;justify-content:space-between;padding:.75rem 1.5rem}.console-footer-left{color:#a0aec0}.console-scroll-bottom-btn,.console-status{align-items:center;display:flex;gap:.5rem}.console-scroll-bottom-btn{background:#4ade80;border:none;border-radius:6px;color:#1a202c;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.console-scroll-bottom-btn:hover{background:#38d9a9;transform:translateY(-1px)}@media (max-width:768px){.scan-console-header{align-items:stretch;flex-direction:column;gap:1rem}.console-header-right{flex-wrap:wrap;gap:.5rem}.console-search-input{width:150px}.console-message-header{align-items:flex-start;flex-direction:column;gap:.5rem}.scan-console-footer{align-items:stretch;flex-direction:column;gap:.75rem}}@media (max-width:480px){.scan-console-content{height:300px}.console-search-input{width:120px}.console-message{padding:.5rem}.console-message-header{font-size:.7rem}.console-message-content{font-size:.8rem}}@keyframes slideInMessage{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.console-message{animation:slideInMessage .3s ease-out}.console-loading{animation:pulse 1.5s ease-in-out infinite}.progress-details-toggle{margin-bottom:1.5rem}.progress-details-toggle.error{margin-bottom:1rem}.toggle-error{align-items:center;background:#f565651a;border:1px solid #f56565;border-radius:8px;color:#feb2b2;display:flex;font-size:.875rem;gap:.75rem;padding:1rem}.toggle-error i{color:#f56565;font-size:1rem}.retry-btn{background:#0000;border:1px solid #f56565;border-radius:4px;color:#f56565;font-size:.75rem;margin-left:auto;padding:.25rem .5rem;transition:all .2s ease}.retry-btn:hover{background:#f56565;color:#fff}.toggle-container{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);border:1px solid #e2e8f0;border-radius:12px;display:flex;justify-content:space-between;padding:1.25rem 1.5rem;transition:all .2s ease}.toggle-container:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000000d}.toggle-info{display:flex;flex-direction:column;gap:.5rem}.toggle-label{color:#2d3748;font-size:1rem;font-weight:600}.toggle-label i{color:#4ade80;font-size:1.125rem}.toggle-description{color:#718096;font-size:.875rem;line-height:1.4}.toggle-switch-container{align-items:center;display:flex;gap:1rem}.toggle-switch{cursor:pointer;height:32px;width:60px}.toggle-slider{align-items:center;background:#cbd5e0;border-radius:32px;display:flex;justify-content:center;transition:all .3s ease}.toggle-slider:before{background:#fff;box-shadow:0 2px 4px #0003;height:24px;left:4px;transition:all .3s ease;width:24px}.toggle-switch input:checked+.toggle-slider{background:#4ade80}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(28px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.6}.toggle-slider.loading{background:#a0aec0}.toggle-slider.loading i{color:#fff;font-size:.875rem;position:absolute;z-index:1}.toggle-slider.loading:before{opacity:.7}.toggle-status{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.status-text{font-size:.875rem;font-weight:600;transition:color .2s ease}.status-text.enabled{color:#38a169}.status-text.disabled{color:#718096}.toggle-hint{align-items:center;animation:slideIn .3s ease-out;background:#4ade801a;border:1px solid #4ade8033;border-radius:8px;color:#2f855a;display:flex;font-size:.875rem;gap:.5rem;margin-top:.75rem;padding:.75rem 1rem}.toggle-hint i{color:#4ade80;font-size:1rem}@media (prefers-color-scheme:dark){.toggle-container{background:linear-gradient(135deg,#2d3748,#1a202c);border-color:#4a5568}.toggle-container:hover{border-color:#718096}.toggle-label{color:#e2e8f0}.toggle-description{color:#a0aec0}.toggle-slider{background:#4a5568}.toggle-hint{background:#4ade8026;border-color:#4ade804d;color:#68d391}}@media (max-width:768px){.toggle-container{align-items:stretch;flex-direction:column;gap:1rem}.toggle-switch-container{justify-content:space-between}.toggle-status{align-items:flex-start}.toggle-hint{text-align:center}}@media (max-width:480px){.toggle-container{padding:1rem}.toggle-label{font-size:.875rem}.toggle-description{font-size:.8rem}.toggle-switch{height:28px;width:50px}.toggle-slider:before{height:20px;left:4px;width:20px}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(22px)}.toggle-hint{font-size:.8rem;padding:.5rem .75rem}}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #4ade804d}.retry-btn:focus{box-shadow:0 0 0 3px #f565654d;outline:none}@media (prefers-contrast:high){.toggle-container{border-width:2px}.toggle-slider{border:2px solid}.toggle-hint{border-width:2px}}@media (prefers-reduced-motion:reduce){.status-text,.toggle-container,.toggle-slider,.toggle-slider:before{transition:none}.toggle-hint{animation:none}}.network-graph-modal-overlay{align-items:center;background-color:#000000bf;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:1000}.network-graph-modal{background:#fff;border-radius:12px;box-shadow:0 25px 50px #00000040;display:flex;flex-direction:column;height:95vh;max-height:none;max-width:none;overflow:hidden;width:98vw}.network-graph-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e5e7eb;color:#fff;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1.5rem 2rem}.header-left h2{align-items:center;display:flex;font-size:1.5rem;gap:.75rem;margin:0 0 .5rem}.header-left h2 i{color:#fbbf24}.graph-metadata{display:flex;flex-wrap:wrap;font-size:.875rem;gap:1.5rem;opacity:.9}.graph-metadata span{align-items:center;display:flex;gap:.5rem}.header-controls{flex-wrap:wrap}.layout-controls select,.node-size-controls select{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;min-width:120px;padding:.5rem}.layout-controls select:focus,.node-size-controls select:focus{background:#ffffff4d;outline:none}.layout-controls select option,.node-size-controls select option{background:#374151;color:#fff}.zoom-controls{align-items:center;background:#ffffff1a;border-radius:8px;display:flex;gap:.5rem;padding:.5rem}.zoom-controls button{background:#fff3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;min-width:2rem;padding:.5rem;transition:background-color .2s}.zoom-controls button:hover:not(:disabled){background:#ffffff4d}.zoom-controls button:disabled{cursor:not-allowed;opacity:.5}.zoom-level{color:#fff;min-width:3rem}.export-controls{display:flex;gap:.5rem}.export-controls button{background:#22c55ecc;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem .75rem;transition:background-color .2s}.export-controls button:hover{background:#22c55e}.controls-toggle,.legend-toggle{background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.5rem;transition:background-color .2s}.controls-toggle:hover,.legend-toggle:hover{background:#ffffff4d}.controls-toggle.active,.legend-toggle.active{background:#3b82f6cc}.close-button{background:#ef4444cc;border-radius:6px;font-size:1rem;padding:.5rem;transition:background-color .2s}.close-button:hover{background:#ef4444}.network-graph-content{display:flex;flex:1 1;overflow:hidden;position:relative}.loading-state{color:#6b7280;flex:1 1;flex-direction:column}.loading-state i{font-size:3rem;margin-bottom:1rem}.loading-state p{font-size:1.125rem;margin:0}.error-state{align-items:center;color:#dc2626;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:2rem;text-align:center}.error-state i{font-size:3rem;margin-bottom:1rem}.error-state p{font-size:1.125rem;margin:0 0 1.5rem}.retry-button{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s}.retry-button:hover{background:#2563eb}.severity-filters{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px #0000001a;left:1rem;max-width:250px;min-width:200px;padding:1rem;position:absolute;top:1rem;z-index:10}.severity-filters h4{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 .75rem}.filter-controls{gap:.5rem;margin-bottom:.75rem}.filter-all-button{background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;font-size:.75rem;padding:.25rem .5rem;transition:background-color .2s}.filter-all-button:hover{background:#e5e7eb}.filter-checkboxes{display:flex;flex-direction:column;gap:.5rem}.severity-filter{align-items:center;border-radius:4px;color:#374151;cursor:pointer;display:flex;font-size:.75rem;gap:.5rem;padding:.25rem;transition:background-color .2s}.severity-filter:hover{background:#f9fafb}.severity-filter input[type=checkbox]{display:none}.severity-filter .checkmark{border:2px solid #d1d5db;border-radius:3px;height:16px;position:relative;transition:all .2s;width:16px}.severity-filter input[type=checkbox]:checked+.checkmark{background:#3b82f6;border-color:#3b82f6}.severity-filter input[type=checkbox]:checked+.checkmark:after{color:#fff;content:"✓";font-size:12px;font-weight:700;left:2px;position:absolute;top:-2px}.severity-filter.critical .checkmark{border-color:#dc2626}.severity-filter.critical input[type=checkbox]:checked+.checkmark{background:#dc2626;border-color:#dc2626}.severity-filter.high .checkmark{border-color:#f59e0b}.severity-filter.high input[type=checkbox]:checked+.checkmark{background:#f59e0b;border-color:#f59e0b}.severity-filter.medium .checkmark{border-color:#eab308}.severity-filter.medium input[type=checkbox]:checked+.checkmark{background:#eab308;border-color:#eab308}.severity-filter.low .checkmark{border-color:#22c55e}.severity-filter.low input[type=checkbox]:checked+.checkmark{background:#22c55e;border-color:#22c55e}.severity-filter.info .checkmark{border-color:#6b7280}.severity-filter.info input[type=checkbox]:checked+.checkmark{background:#6b7280;border-color:#6b7280}.severity-label{gap:.25rem}.severity-label .count{color:#6b7280;font-size:.7rem}.graph-legend{background:#fff;box-shadow:0 4px 6px #0000001a;min-width:150px;padding:1rem;position:absolute;right:1rem;top:1rem;z-index:10}.graph-legend h4{color:#374151;font-size:.875rem;font-weight:600;margin:0 0 .75rem}.legend-items{display:flex;flex-direction:column;gap:.5rem}.legend-item{color:#6b7280}.legend-icon{border-radius:3px;flex-shrink:0;height:16px;width:16px}.host-icon{background-color:#e3f2fd;border:1px solid #2196f3;border-radius:50%}.service-icon{background-color:#f3e5f5;border:1px solid #9c27b0}.vuln-critical{background-color:#ffcdd2;border:1px solid #d32f2f;transform:rotate(45deg)}.vuln-high{background-color:#ffe0b2;border:1px solid #f57c00;transform:rotate(45deg)}.vuln-medium{background-color:#fff9c4;border:1px solid #fbc02d}.vuln-low,.vuln-medium{transform:rotate(45deg)}.vuln-low{background-color:#e8f5e8;border:1px solid #388e3c}.vuln-info{background-color:#f0f4f8;border:1px solid #64748b;transform:rotate(45deg)}.graph-container{background:#f9fafb;flex:1 1;padding:1rem}.graph-container svg{cursor:grab;height:100%!important;max-height:none!important;max-width:none!important;transform-origin:center center;transition:transform .2s ease;width:100%!important}.graph-container svg:active{cursor:grabbing}.graph-container svg g.node ellipse,.graph-container svg g.node polygon{transition:all .2s ease}.graph-container svg g.node:hover ellipse,.graph-container svg g.node:hover polygon{stroke-width:3px!important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.graph-container svg g.edge path{transition:all .2s ease}.graph-container svg g.edge:hover path{stroke-width:2.5px!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.network-graph-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:1rem 2rem;text-align:center}.network-graph-footer small{color:#6b7280;font-size:.75rem}.footer-stats{margin-left:1rem;opacity:.8}@media (max-width:1024px){.network-graph-modal{height:97vh;width:99vw}.header-controls{gap:.5rem}.severity-filters{left:auto;max-width:none}.graph-legend,.severity-filters{margin:1rem;position:relative;top:auto;width:calc(100% - 2rem)}.graph-legend{right:auto}}@media (max-width:768px){.network-graph-modal{border-radius:0;height:100vh;max-height:none;max-width:none;width:100vw}.network-graph-header{flex-direction:column;gap:1rem;padding:1rem}.header-left h2{font-size:1.25rem}.graph-metadata{gap:1rem}.graph-metadata,.header-controls{flex-wrap:wrap;justify-content:center}.header-controls{gap:.5rem}.layout-controls select,.node-size-controls select{font-size:.75rem;min-width:100px}.zoom-controls{order:1}.export-controls{order:2}.controls-toggle{order:3}.legend-toggle{order:4}.close-button{order:5}}@media (max-width:480px){.network-graph-header{padding:.75rem}.header-left h2{font-size:1.125rem}.graph-metadata{font-size:.75rem}.export-controls button,.zoom-controls button{font-size:.75rem;padding:.375rem .5rem}.graph-container{padding:.5rem}.graph-legend,.severity-filters{margin:.5rem;padding:.75rem;width:calc(100% - 1rem)}}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.network-graph-modal{animation:modalFadeIn .2s ease-out}.graph-container::-webkit-scrollbar{height:8px;width:8px}.graph-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.graph-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.graph-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.graph-container svg *{vector-effect:non-scaling-stroke}.severity-filter:focus-within{outline:2px solid #3b82f6;outline-offset:2px}.close-button:focus,.controls-toggle:focus,.export-controls button:focus,.legend-toggle:focus,.zoom-controls button:focus{outline:2px solid #ffffff80;outline-offset:2px}.loading-state i.fa-spin{animation:spin 1s linear infinite}.graph-container svg{transition:opacity .3s ease}.graph-container.updating svg{opacity:.7}.timing-statistics-modal-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:24px;position:fixed;right:0;top:0;z-index:1000}.timing-statistics-modal{background:#fff;border-radius:8px;box-shadow:0 25px 50px #00000040;display:flex;flex-direction:column;max-height:92vh;max-width:none;overflow:hidden;width:98%}.modal-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;padding:16px 24px}.header-left h2{color:#212529;font-size:1.25rem;font-weight:600;margin:0 0 4px}.header-left p{color:#6c757d;font-size:.875rem;margin:0}.header-controls{gap:16px}.view-mode-tabs{background:#e9ecef;border-radius:6px;display:flex;padding:4px}.tab-button{background:#0000;border-radius:4px;color:#6c757d;gap:6px;padding:8px 16px}.tab-button:hover{background:#ffffff80;color:#495057}.tab-button.active{box-shadow:0 1px 3px #0000001a}.export-dropdown{position:relative}.export-btn{align-items:center;background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:8px;padding:8px 16px;transition:background-color .2s}.export-btn:hover{background:#0056b3}.export-dropdown-menu{background:#fff;border:1px solid #dee2e6;border-radius:4px;box-shadow:0 4px 6px #0000001a;margin-top:4px;min-width:160px;position:absolute;right:0;top:100%;z-index:1001}.export-dropdown-menu button{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:.875rem;gap:8px;padding:8px 16px;text-align:left;transition:background-color .2s;width:100%}.export-dropdown-menu button:hover{background:#f8f9fa}.modal-close{color:#6c757d;font-size:1rem;height:32px;transition:background-color .2s;width:32px}.modal-close:hover{background:#e9ecef;color:#495057}.error-state,.loading-state{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.error-state i,.loading-state i{font-size:2rem;margin-bottom:15px}.retry-btn{align-items:center;background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;gap:8px;margin-top:15px;padding:8px 16px;transition:background .3s}.retry-btn:hover{background:#2563eb}.overview-content{display:flex;flex-direction:column;gap:24px}.summary-stats{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;gap:24px;margin-bottom:24px;padding:16px}.stat-item{flex:1 1}.stat-value{color:#007bff;margin-bottom:4px}.stat-label{color:#6c757d;font-weight:500}.charts-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:24px}.chart-container{border-radius:8px}.chart-container h4{color:#374151;font-size:1rem;font-weight:600;margin:0 0 16px}.performance-metrics{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.performance-metrics h4{color:#374151;font-size:1rem;font-weight:600;margin:0 0 16px}.metrics-grid{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.metric-item{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;justify-content:space-between;padding:12px}.metric-label{color:#6c757d;font-size:.875rem;font-weight:500}.metric-value{color:#374151;font-size:.875rem;font-weight:600}.engines-content{width:100%}.engines-table-container{border:1px solid #dee2e6;border-radius:6px;overflow:hidden}.engines-table{border-collapse:collapse;font-size:.875rem;width:100%}.engines-table thead{background:#f8f9fa}.engines-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.engines-table tbody tr{border-bottom:1px solid #dee2e6}.engines-table tbody tr:hover{background:#f8f9fa}.engines-table td{padding:12px 16px;vertical-align:middle}.engine-name{min-width:150px}.engine-info{align-items:center;display:flex;gap:12px}.engine-icon{border-radius:50%;height:12px;width:12px}.duration-cell{color:#374151;font-weight:600;min-width:80px}.duration-cell,.duration-range{font-family:Courier New,monospace;text-align:right}.duration-range{color:#6c757d;font-size:.8rem;min-width:120px}.count-cell{color:#374151;font-weight:600;min-width:60px;text-align:center}.success-rate-cell{min-width:120px}.success-rate-bar{background:#e5e7eb;border-radius:10px;height:20px;overflow:hidden;position:relative;width:100%}.success-rate-fill{border-radius:10px;height:100%;transition:width .3s ease}.success-rate-text{color:#374151;font-size:.75rem;font-weight:600;left:50%;position:absolute;text-shadow:0 0 3px #fffc;top:50%;transform:translate(-50%,-50%)}.operations-cell{min-width:100px}.operations-breakdown{align-items:center;display:flex;gap:8px}.success-count{color:#10b981;font-size:.8rem;font-weight:600}.error-count{color:#ef4444;font-size:.8rem}.targets-content{width:100%}.targets-table-container{border:1px solid #dee2e6;border-radius:6px;overflow:hidden}.targets-table{border-collapse:collapse;font-size:.875rem;width:100%}.targets-table thead{background:#f8f9fa}.targets-table th{border-bottom:2px solid #dee2e6;color:#495057;font-weight:600;padding:12px 16px;text-align:left;white-space:nowrap}.targets-table tbody tr{border-bottom:1px solid #dee2e6}.targets-table tbody tr:hover{background:#f8f9fa}.targets-table td{padding:12px 16px;vertical-align:middle}.target-name{color:#374151;font-weight:600;min-width:150px}.target-address{color:#6c757d;font-family:Courier New,monospace;min-width:120px}.performance-content{display:flex;flex-direction:column;gap:24px}.performance-chart{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.performance-chart h4{color:#374151;font-size:1rem;font-weight:600;margin:0 0 16px}.performance-recommendations{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.performance-recommendations h4{color:#374151;font-size:1rem;font-weight:600;margin:0 0 16px}.recommendations-list{gap:12px}.recommendation-item{align-items:flex-start;border-radius:6px;display:flex;font-size:.875rem;gap:12px;line-height:1.4;padding:12px}.recommendation-item.warning{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.recommendation-item.info{background:#dbeafe;border:1px solid #bfdbfe;color:#1e40af}.recommendation-item.success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.recommendation-item i{flex-shrink:0;margin-top:2px}.modal-footer{align-items:center;background:#f8f9fa;border-top:1px solid #e9ecef;justify-content:space-between;padding:16px 24px}.footer-info{color:#6c757d;font-size:.875rem}.close-btn{background:#6c757d;border-radius:4px;color:#fff;font-size:.875rem;padding:8px 16px}.close-btn:hover{background:#5a6268}@media (max-width:1200px){.timing-statistics-modal{max-width:95vw}.header-controls{gap:12px}.summary-stats{gap:16px}.charts-grid,.metrics-grid{grid-template-columns:1fr}}@media (max-width:768px){.timing-statistics-modal-overlay{padding:10px}.timing-statistics-modal{max-height:95vh}.modal-header{align-items:stretch;flex-direction:column;gap:12px;padding:12px 16px}.header-controls{flex-wrap:wrap;gap:8px;justify-content:space-between}.view-mode-tabs{order:-1;width:100%}.tab-button{flex:1 1;justify-content:center}.modal-body{padding:16px}.summary-stats{flex-direction:column;gap:12px}.stat-item{flex-direction:row;justify-content:space-between;text-align:left}.engines-table-container,.targets-table-container{overflow-x:auto}.engines-table,.targets-table{min-width:800px}.modal-footer{flex-direction:column;gap:12px;padding:12px 16px}}@media (max-width:480px){.header-controls{align-items:stretch;flex-direction:column}.close-btn,.export-btn{justify-content:center}.engines-table,.targets-table{min-width:1000px}}@media (prefers-color-scheme:dark){.timing-statistics-modal{background:#1a1a1a;color:#e9ecef}.modal-footer,.modal-header{background:#2d2d2d;border-color:#404040}.engines-table thead,.targets-table thead{background:#2d2d2d}.engines-table th,.targets-table th{border-color:#404040;color:#e9ecef}.engines-table tbody tr,.targets-table tbody tr{border-color:#404040}.engines-table tbody tr:hover,.targets-table tbody tr:hover{background:#2d2d2d}.chart-container,.performance-chart,.performance-metrics,.performance-recommendations,.summary-stats{background:#2d2d2d;border-color:#404040}.success-rate-bar{background:#404040}}.results-vs-time-cell{min-width:120px;padding:.5rem;text-align:center}.results-time-overlay{align-items:center;display:flex;flex-direction:column;gap:.25rem}.results-count{color:#3b82f6;font-size:.9em;font-weight:700}.time-efficiency{color:#6b7280;font-size:.8em}.findings-per-rating-cell{min-width:140px;padding:.5rem;text-align:center}.findings-breakdown{align-items:center;display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center}.findings-breakdown span{background-color:#ffffff1a;border:1px solid;border-radius:.25rem;font-size:.75rem;font-weight:600;padding:.125rem .25rem}.critical-count{background-color:#dc26261a!important;color:#dc2626!important}.high-count{background-color:#ea580c1a!important;color:#ea580c!important}.medium-count{background-color:#d977061a!important;color:#d97706!important}.low-count{background-color:#65a30d1a!important;color:#65a30d!important}.info-count{background-color:#2563eb1a!important;color:#2563eb!important}.no-findings{color:#6b7280;font-style:italic}.success-rate-fill{max-width:100%!important}@media (max-width:768px){.engines-table,.targets-table{min-width:1200px}}@media (max-width:480px){.engines-table,.targets-table{min-width:1400px}}.attack-path-modal-overlay{align-items:center;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:9999!important}.attack-path-modal{background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-height:92vh;max-width:1800px;overflow:hidden;width:98%}.modal-header{background:linear-gradient(90deg,#1e293b,#334155);color:#fff}.header-title{gap:.75rem}.header-title i{color:#60a5fa;font-size:1.5rem}.header-title h2{font-size:1.25rem;font-weight:600;margin:0}.header-controls{align-items:center;display:flex;gap:1rem}.checkbox-control{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.checkbox-control input{cursor:pointer;height:16px;width:16px}.close-button{align-items:center;background:#ffffff1a;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.close-button:hover{background:#fff3}.view-tabs{background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;gap:0;padding:0 1.5rem}.view-tabs .tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:1rem 1.5rem;transition:all .2s}.view-tabs .tab:hover{background:#3b82f60d;color:#3b82f6}.view-tabs .tab.active{border-bottom-color:#3b82f6;color:#3b82f6}.tab-badge{background:#3b82f6;border-radius:10px;color:#fff;font-size:.75rem;font-weight:600;padding:.125rem .5rem}.modal-content{flex:1 1;padding:1.5rem}.empty-state,.error-state,.loading-state{align-items:center;color:#64748b;display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:4rem 2rem;text-align:center}.empty-state i,.error-state i,.loading-state i{color:#cbd5e1;font-size:3rem}.error-state i{color:#ef4444}.error-state button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:.5rem;padding:.5rem 1rem}.attack-path-summary h3{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;gap:.75rem;margin:0 0 1.5rem}.attack-path-summary h3 i{color:#3b82f6}.summary-grid{margin-bottom:2rem}.summary-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;gap:1rem;padding:1.25rem;transition:all .2s}.summary-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.summary-icon{align-items:center;border-radius:12px;color:#fff;display:flex;font-size:1.25rem;height:48px;justify-content:center;width:48px}.summary-content{display:flex;flex-direction:column}.summary-value{color:#1e293b;font-size:1.75rem}.summary-label{color:#64748b;margin-top:.25rem}.risk-indicators{grid-gap:1rem;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:1.5rem}.risk-indicator{align-items:center;display:flex;flex-direction:column;text-align:center}.risk-label{color:#64748b;font-size:.75rem;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.risk-value{font-size:1.5rem;font-weight:700}.risk-badge{border-radius:6px;font-size:.75rem;font-weight:600;padding:.375rem .75rem;text-transform:uppercase}.risk-badge-low{background:#dcfce7;color:#166534}.risk-badge-medium{background:#fef9c3;color:#854d0e}.risk-badge-high{background:#fed7aa;color:#c2410c}.risk-badge-critical{background:#fecaca;color:#dc2626}.attack-paths-list h3{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;gap:.75rem;margin:0 0 1.5rem}.paths-view{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 400px}.paths-container{display:flex;flex-direction:column;gap:1rem}.path-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;padding:1.25rem;transition:all .2s}.path-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.path-card.selected{background:#eff6ff;border-color:#3b82f6}.path-card.critical{border-left:4px solid #dc2626}.path-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem}.path-rank{align-items:center;display:flex;gap:.75rem}.rank-number{color:#64748b;font-size:.875rem;font-weight:600}.critical-badge{background:#fef2f2;border-radius:4px;color:#dc2626;font-size:.75rem;font-weight:600;gap:.25rem;padding:.25rem .5rem}.critical-badge,.path-risk{align-items:center;display:flex}.path-risk{border-radius:8px;color:#fff;font-size:.875rem;font-weight:700;height:40px;justify-content:center;width:40px}.path-name{color:#1e293b;font-weight:600;margin-bottom:.25rem}.path-description{color:#64748b;font-size:.875rem;margin-bottom:1rem}.path-steps-preview{display:flex;flex-direction:column;gap:.5rem}.step-preview{background:#f8fafc;border-radius:6px;font-size:.813rem;gap:.75rem;padding:.5rem .75rem}.step-number,.step-preview{align-items:center;display:flex}.step-number{background:#3b82f6;border-radius:50%;color:#fff;font-size:.75rem;font-weight:600;height:20px;justify-content:center;width:20px}.step-action{color:#374151;flex:1 1}.step-technique{background:#e5e7eb;border-radius:4px;color:#6b7280;font-size:.75rem;padding:.125rem .375rem}.more-steps{color:#64748b;font-size:.813rem;font-style:italic;padding:.5rem;text-align:center}.selected-path-details{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;position:-webkit-sticky;position:sticky;top:0}.path-details-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem 1.25rem}.path-details-header h4{color:#1e293b;font-size:1rem;margin:0}.close-btn{border:1px solid #e5e7eb;color:#64748b;height:28px;width:28px}.close-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.path-details-body{padding:1.25rem}.path-meta{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem}.meta-item{background:#f8fafc;border-radius:8px;flex-direction:column;padding:.75rem}.meta-label{color:#64748b;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.meta-value{color:#1e293b;font-size:1rem;font-weight:600;margin-top:.25rem}.path-steps-detailed h5{color:#64748b;font-size:.875rem;letter-spacing:.05em;margin:0 0 1rem;text-transform:uppercase}.step-detailed{display:flex;gap:1rem;margin-bottom:.5rem}.step-connector{align-items:center;display:flex;flex-direction:column;width:20px}.step-dot{background:#3b82f6;border-radius:50%;flex-shrink:0;height:12px;width:12px}.step-line{background:#e5e7eb;flex:1 1;margin:4px 0;width:2px}.step-content{flex:1 1;padding-bottom:1rem}.step-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.step-number-badge{color:#3b82f6;font-size:.75rem;font-weight:600}.difficulty-badge{border-radius:4px;font-size:.688rem;font-weight:600;padding:.125rem .375rem;text-transform:uppercase}.difficulty-easy{background:#dcfce7;color:#166534}.difficulty-medium{background:#fef9c3;color:#854d0e}.difficulty-hard{background:#fecaca;color:#dc2626}.step-action-text{color:#1e293b;font-weight:500;margin-bottom:.375rem}.step-technique-text{align-items:center;color:#64748b;display:flex;font-size:.813rem;gap:.5rem;margin-bottom:.375rem}.step-technique-text i{color:#8b5cf6}.step-risk{color:#64748b;font-size:.813rem}.nodes-graph-view h3{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;gap:.75rem;margin:0 0 1rem}.nodes-legend{background:#f8fafc;border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1rem}.legend-item{color:#64748b;font-size:.813rem;gap:.5rem}.nodes-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:visible}.nodes-section h4{color:#64748b;font-size:.875rem;letter-spacing:.05em;margin:0 0 1rem;text-transform:uppercase}.nodes-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto}.node-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem 1rem;transition:all .2s}.node-card:hover{background:#f8fafc;border-color:#3b82f6}.node-card.selected{background:#eff6ff;border-color:#3b82f6}.node-icon{border-radius:8px;font-size:.875rem;height:36px;width:36px}.node-icon,.node-severity{align-items:center;color:#fff;display:flex;justify-content:center}.node-severity{border-radius:6px;font-size:.75rem;font-weight:700;height:28px;width:28px}.node-info{flex:1 1;min-width:0}.node-label{color:#1e293b;display:block;font-size:.875rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-details,.node-ip{color:#64748b;display:block;font-size:.75rem}.node-badges{display:flex;gap:.375rem}.badge{font-size:.625rem;font-weight:600;padding:.125rem .375rem}.badge-external{background:#fef2f2;color:#dc2626}.badge-pivot{background:#fdf4ff;color:#c026d3}.badge-criticality-critical{background:#fef2f2;color:#dc2626}.badge-criticality-high{background:#fff7ed;color:#c2410c}.badge-criticality-medium{background:#fefce8;color:#a16207}.badge-criticality-low{background:#f0fdf4;color:#15803d}.node-cvss,.node-risk-score{font-size:.875rem;font-weight:700;min-width:36px;text-align:right}.more-nodes{color:#64748b;font-size:.813rem;font-style:italic;padding:.75rem;text-align:center}.node-details-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-top:1.5rem;overflow:hidden}.panel-header{background:#f8fafc;border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:1rem 1.25rem}.panel-header,.panel-header h4{align-items:center;display:flex}.panel-header h4{color:#1e293b;font-size:1rem;gap:.5rem;margin:0}.panel-body{padding:1rem 1.25rem}.detail-row{align-items:center;border-bottom:1px solid #f1f5f9;justify-content:space-between;padding:.5rem 0}.detail-label{color:#64748b;font-size:.813rem}.detail-value{color:#1e293b;font-size:.875rem;font-weight:500}.detail-value a{color:#3b82f6;text-decoration:none}.detail-value a:hover{text-decoration:underline}@media (max-width:1024px){.risk-indicators,.summary-grid{grid-template-columns:repeat(2,1fr)}.paths-view{grid-template-columns:1fr}.selected-path-details{position:relative}.nodes-grid{grid-template-columns:1fr}}@media (max-width:640px){.attack-path-modal-overlay{padding:0}.attack-path-modal{border-radius:0;max-height:100vh}.summary-grid{grid-template-columns:1fr}.view-tabs{overflow-x:auto}.view-tabs .tab{padding:.75rem 1rem;white-space:nowrap}}.interactive-graph-view{display:flex;flex-direction:column;gap:1rem}.interactive-graph-view .graph-header{align-items:center;display:flex;justify-content:space-between}.interactive-graph-view .graph-header h3{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;gap:.5rem;margin:0}.interactive-graph-view .graph-header h3 i{color:#3b82f6}.graph-controls{gap:.5rem}.graph-controls,.zoom-btn{align-items:center;display:flex}.zoom-btn{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;height:32px;justify-content:center;transition:all .2s;width:32px}.zoom-btn:hover{background:#e2e8f0;color:#3b82f6}.zoom-level{color:#64748b;font-size:.875rem;font-weight:500;min-width:40px;text-align:center}.graph-legend{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:1.5rem;padding:.75rem 1rem}.legend-section{align-items:center;display:flex;gap:1rem}.legend-title{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.legend-item{color:#475569;font-size:.8125rem;gap:.375rem}.legend-dot{border-radius:50%;height:12px;width:12px}.legend-line{border-radius:2px;height:3px;width:20px}.legend-line.dashed{background:repeating-linear-gradient(90deg,currentColor,currentColor 3px,#0000 0,#0000 6px)}.graph-container{background:#fafbfc;border:1px solid #e5e7eb;border-radius:12px;min-height:500px;overflow:hidden;position:relative}.graph-container svg{display:block;transition:transform .1s ease-out}.edges-layer .edge line{transition:stroke-opacity .2s}.edges-layer .edge.highlighted line{stroke-opacity:1!important}.edges-layer .edge .edge-label{background:#fff;font-family:Inter,sans-serif;padding:2px 4px;pointer-events:none}.animated-edge{animation:edgePulse 2s infinite}@keyframes edgePulse{0%,to{stroke-opacity:.6}50%{stroke-opacity:1}}.nodes-layer .graph-node{transition:transform .2s}.nodes-layer .graph-node:hover{transform:scale(1.1)}.nodes-layer .graph-node.selected .node-circle{stroke:#3b82f6;stroke-width:3px}.node-glow{animation:glowPulse 2s infinite}@keyframes glowPulse{0%,to{stroke-opacity:.2}50%{stroke-opacity:.5}}.node-tooltip{pointer-events:none}.graph-node-details{background:#fff;border-radius:12px;bottom:1rem;box-shadow:0 -4px 20px #00000026;left:1rem;max-height:200px;overflow-y:auto;position:absolute;right:1rem}.graph-node-details .details-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:.75rem 1rem}.graph-node-details .details-header h4{align-items:center;color:#1e293b;display:flex;font-size:.9375rem;gap:.5rem;margin:0}.close-details{align-items:center;background:#0000;border:1px solid #e5e7eb;border-radius:6px;color:#64748b;cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .2s;width:28px}.close-details:hover{background:#f1f5f9;color:#dc2626}.graph-node-details .details-body{padding:1rem}.detail-grid{grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.detail-item .detail-label{color:#64748b;font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.detail-item .detail-value{color:#1e293b;font-size:.875rem;font-weight:500}.detail-item .severity-badge{border-radius:4px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;padding:.125rem .5rem;width:-webkit-fit-content;width:fit-content}.detail-item .cve-link,.detail-item .mitre-link{color:#3b82f6;text-decoration:none}.detail-item .cve-link:hover,.detail-item .mitre-link:hover{text-decoration:underline}.detail-item.mitre-section{grid-column:span 2}.mitre-tactic{color:#8b5cf6;display:block;font-size:.75rem;margin-top:.25rem}.risk-score{font-size:1rem!important;font-weight:700!important}.priority-scores-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.priority-scores-modal{background:#1a1a2e;background:var(--bg-primary,#1a1a2e);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:12px;box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;max-height:92vh;max-width:1600px;width:98%}.priority-scores-header{align-items:center;background:#16162a;background:var(--bg-secondary,#16162a);border-bottom:1px solid #2d2d44;border-bottom:1px solid var(--border-color,#2d2d44);border-radius:12px 12px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.priority-scores-header h2{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:1.25rem;gap:10px;margin:0}.priority-scores-header h2 svg{color:#f59e0b;color:var(--accent-warning,#f59e0b)}.view-toggle{background:#1a1a2e;background:var(--bg-primary,#1a1a2e);border-radius:8px;display:flex;gap:4px;padding:4px}.view-toggle button{background:#0000;border:none;border-radius:6px;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);cursor:pointer;font-size:.875rem;padding:8px 16px;transition:all .2s ease}.view-toggle button:hover{background:#252540;background:var(--bg-tertiary,#252540);color:#fff;color:var(--text-primary,#fff)}.view-toggle button.active{background:#6366f1;background:var(--accent-primary,#6366f1);color:#fff}.config-toggle-btn{align-items:center;background:#252540;background:var(--bg-tertiary,#252540);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:6px;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);cursor:pointer;display:flex;font-size:.875rem;gap:6px;padding:8px 12px;transition:all .2s ease}.config-toggle-btn:hover{background:#2d2d44;background:var(--bg-hover,#2d2d44);color:#fff;color:var(--text-primary,#fff)}.config-toggle-btn.active{background:#6366f1;background:var(--accent-primary,#6366f1);border-color:#6366f1;border-color:var(--accent-primary,#6366f1);color:#fff}.close-btn{background:#0000;border-radius:6px;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);padding:8px;transition:all .2s ease}.close-btn:hover{background:#252540;background:var(--bg-tertiary,#252540);color:#fff;color:var(--text-primary,#fff)}.priority-scores-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.config-panel{background:#16162a;background:var(--bg-secondary,#16162a);border-bottom:1px solid #2d2d44;border-bottom:1px solid var(--border-color,#2d2d44);padding:20px 24px}.config-panel h3{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:1rem;gap:8px;margin:0 0 16px}.weight-sliders{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.weight-slider{display:flex;flex-direction:column;gap:8px}.weight-slider label{align-items:center;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);display:flex;font-size:.875rem;justify-content:space-between}.weight-slider label span{color:#6366f1;color:var(--accent-primary,#6366f1);font-weight:600}.weight-slider input[type=range]{-webkit-appearance:none;appearance:none;background:#252540;background:var(--bg-tertiary,#252540);border-radius:3px;cursor:pointer;height:6px;width:100%}.weight-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#6366f1;background:var(--accent-primary,#6366f1);border-radius:50%;cursor:pointer;height:16px;-webkit-transition:transform .2s ease;transition:transform .2s ease;width:16px}.weight-slider input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}.weight-warning{align-items:center;background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:8px;color:#f59e0b;color:var(--accent-warning,#f59e0b);display:flex;font-size:.875rem;gap:8px;margin-top:16px;padding:12px 16px}.priority-summary{overflow-y:auto;padding:24px}.summary-header{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.summary-stat{background:#16162a;background:var(--bg-secondary,#16162a);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);padding:20px}.summary-stat .stat-value{font-size:1.75rem;font-weight:700;margin-bottom:4px}.summary-stat .stat-label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.875rem}.summary-stat.critical .stat-value{color:#ef4444;color:var(--accent-danger,#ef4444)}.summary-stat.high .stat-value{color:#f59e0b;color:var(--accent-warning,#f59e0b)}.summary-stat.medium .stat-value{color:#3b82f6;color:var(--accent-info,#3b82f6)}.summary-stat.low .stat-value{color:#22c55e;color:var(--accent-success,#22c55e)}.summary-sections{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.summary-section{background:#16162a;background:var(--bg-secondary,#16162a);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:12px;padding:20px}.summary-section h3{align-items:center;color:#fff;color:var(--text-primary,#fff);display:flex;font-size:1rem;gap:8px;margin:0 0 16px}.distribution-bars{display:flex;flex-direction:column;gap:12px}.distribution-bar{align-items:center;display:flex;gap:12px}.distribution-bar .label{font-size:.875rem;font-weight:500;width:80px}.distribution-bar .label.critical{color:#ef4444;color:var(--accent-danger,#ef4444)}.distribution-bar .label.high{color:#f59e0b;color:var(--accent-warning,#f59e0b)}.distribution-bar .label.medium{color:#3b82f6;color:var(--accent-info,#3b82f6)}.distribution-bar .label.low{color:#22c55e;color:var(--accent-success,#22c55e)}.distribution-bar .bar-container{background:#252540;background:var(--bg-tertiary,#252540);border-radius:4px;flex:1 1;height:24px;overflow:hidden}.distribution-bar .bar-fill{border-radius:4px;height:100%;transition:width .5s ease}.distribution-bar .bar-fill.critical{background:linear-gradient(90deg,#ef4444,#dc2626);background:linear-gradient(90deg,var(--accent-danger,#ef4444),#dc2626)}.distribution-bar .bar-fill.high{background:linear-gradient(90deg,#f59e0b,#d97706);background:linear-gradient(90deg,var(--accent-warning,#f59e0b),#d97706)}.distribution-bar .bar-fill.medium{background:linear-gradient(90deg,#3b82f6,#2563eb);background:linear-gradient(90deg,var(--accent-info,#3b82f6),#2563eb)}.distribution-bar .bar-fill.low{background:linear-gradient(90deg,#22c55e,#16a34a);background:linear-gradient(90deg,var(--accent-success,#22c55e),#16a34a)}.distribution-bar .count{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.875rem;text-align:right;width:50px}.remediation-timeline{display:flex;flex-direction:column;gap:16px}.timeline-item{gap:16px}.timeline-marker{align-items:center;display:flex;flex-direction:column;gap:4px}.timeline-marker .dot{border:2px solid;border-radius:50%;height:12px;width:12px}.timeline-marker .line{background:#2d2d44;background:var(--border-color,#2d2d44);height:30px;width:2px}.timeline-item:last-child .timeline-marker .line{display:none}.timeline-item.immediate .dot{background:#ef4444;background:var(--accent-danger,#ef4444);border-color:#ef4444;border-color:var(--accent-danger,#ef4444)}.timeline-item.week .dot{background:#f59e0b;background:var(--accent-warning,#f59e0b);border-color:#f59e0b;border-color:var(--accent-warning,#f59e0b)}.timeline-item.month .dot{background:#3b82f6;background:var(--accent-info,#3b82f6);border-color:#3b82f6;border-color:var(--accent-info,#3b82f6)}.timeline-item.quarter .dot{background:#22c55e;background:var(--accent-success,#22c55e);border-color:#22c55e;border-color:var(--accent-success,#22c55e)}.timeline-content{flex:1 1}.timeline-content .window{font-size:.875rem;font-weight:600;margin-bottom:4px}.timeline-item.immediate .window{color:#ef4444;color:var(--accent-danger,#ef4444)}.timeline-item.week .window{color:#f59e0b;color:var(--accent-warning,#f59e0b)}.timeline-item.month .window{color:#3b82f6;color:var(--accent-info,#3b82f6)}.timeline-item.quarter .window{color:#22c55e;color:var(--accent-success,#22c55e)}.timeline-content .details{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.8125rem}.top-priorities{display:flex;flex-direction:column;gap:12px}.top-priority-item{align-items:center;background:#252540;background:var(--bg-tertiary,#252540);border-radius:8px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .2s ease}.top-priority-item:hover{background:#2d2d44;background:var(--bg-hover,#2d2d44);transform:translateX(4px)}.priority-rank{align-items:center;background:#6366f1;background:var(--accent-primary,#6366f1);border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:700;height:28px;justify-content:center;width:28px}.priority-info{flex:1 1;min-width:0}.priority-title{color:#fff;color:var(--text-primary,#fff);font-size:.875rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.priority-target{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.75rem}.priority-score-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:4px 10px}.priority-score-badge.critical{background:#ef444433;color:#ef4444;color:var(--accent-danger,#ef4444)}.priority-score-badge.high{background:#f59e0b33;color:#f59e0b;color:var(--accent-warning,#f59e0b)}.priority-score-badge.medium{background:#3b82f633;color:#3b82f6;color:var(--accent-info,#3b82f6)}.priority-score-badge.low{background:#22c55e33;color:#22c55e;color:var(--accent-success,#22c55e)}.priority-list{flex:1 1;overflow-y:auto;padding:24px}.priority-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.priority-list-header h3{color:#fff;color:var(--text-primary,#fff);font-size:1rem;margin:0}.sort-controls{align-items:center;display:flex;gap:8px}.sort-controls label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.875rem}.sort-controls select{background:#252540;background:var(--bg-tertiary,#252540);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:6px;color:#fff;color:var(--text-primary,#fff);cursor:pointer;font-size:.875rem;padding:6px 12px}.priority-items{display:flex;flex-direction:column;gap:12px}.priority-item{align-items:center;background:#16162a;background:var(--bg-secondary,#16162a);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:12px;cursor:pointer;display:flex;gap:16px;padding:16px 20px;transition:all .2s ease}.priority-item:hover{border-color:#6366f1;border-color:var(--accent-primary,#6366f1);box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.priority-item.expanded{align-items:stretch;flex-direction:column}.priority-item-main{align-items:center;display:flex;gap:16px;width:100%}.priority-score-circle{align-items:center;border-radius:50%;display:flex;flex-direction:column;flex-shrink:0;height:44px;justify-content:center;width:44px}.priority-score-circle.critical{background:#ef444426;border:2px solid #ef4444;border:2px solid var(--accent-danger,#ef4444)}.priority-score-circle.high{background:#f59e0b26;border:2px solid #f59e0b;border:2px solid var(--accent-warning,#f59e0b)}.priority-score-circle.medium{background:#3b82f626;border:2px solid #3b82f6;border:2px solid var(--accent-info,#3b82f6)}.priority-score-circle.low{background:#22c55e26;border:2px solid #22c55e;border:2px solid var(--accent-success,#22c55e)}.priority-score-circle .score{font-size:.9rem;font-weight:700}.priority-score-circle.critical .score{color:#ef4444;color:var(--accent-danger,#ef4444)}.priority-score-circle.high .score{color:#f59e0b;color:var(--accent-warning,#f59e0b)}.priority-score-circle.medium .score{color:#3b82f6;color:var(--accent-info,#3b82f6)}.priority-score-circle.low .score{color:#22c55e;color:var(--accent-success,#22c55e)}.priority-score-circle .label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.625rem;letter-spacing:.5px;text-transform:uppercase}.priority-item-content{flex:1 1;min-width:0}.priority-item-title{color:#fff;color:var(--text-primary,#fff);font-size:.875rem;font-weight:600;margin-bottom:4px}.priority-item-meta{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);display:flex;flex-wrap:wrap;font-size:.8125rem;gap:16px}.priority-item-meta span{align-items:center;display:flex;gap:4px}.priority-item-scores{display:flex;flex-shrink:0;gap:8px}.score-pill{align-items:center;background:#252540;background:var(--bg-tertiary,#252540);border-radius:12px;display:flex;font-size:.75rem;gap:4px;padding:4px 10px}.score-pill .score-label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0)}.score-pill .score-value{color:#fff;color:var(--text-primary,#fff);font-weight:600}.priority-item-actions{display:flex;flex-shrink:0;gap:8px}.priority-item-actions button{background:#252540;background:var(--bg-tertiary,#252540);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:6px;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);cursor:pointer;font-size:.75rem;padding:6px 12px;transition:all .2s ease}.priority-item-actions button:hover{background:#2d2d44;background:var(--bg-hover,#2d2d44);color:#fff;color:var(--text-primary,#fff)}.priority-item-details{border-top:1px solid #2d2d44;border-top:1px solid var(--border-color,#2d2d44);margin-top:16px;padding-top:16px}.score-breakdown{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:16px}.score-breakdown-item{background:#252540;background:var(--bg-tertiary,#252540);border-radius:8px;padding:12px;text-align:center}.score-breakdown-item .breakdown-label{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.75rem;margin-bottom:4px}.score-breakdown-item .breakdown-value{color:#fff;color:var(--text-primary,#fff);font-size:1rem;font-weight:700}.score-breakdown-item .breakdown-source{color:#6b6b7b;color:var(--text-tertiary,#6b6b7b);font-size:.6875rem;margin-top:4px}.remediation-info{align-items:center;background:#252540;background:var(--bg-tertiary,#252540);border-radius:8px;display:flex;gap:12px;padding:12px 16px}.remediation-info svg{color:#f59e0b;color:var(--accent-warning,#f59e0b)}.remediation-info .remediation-text{flex:1 1}.remediation-info .remediation-text strong{color:#fff;color:var(--text-primary,#fff)}.remediation-info .remediation-text span{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.875rem}.priority-scores-empty,.priority-scores-error,.priority-scores-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 24px;text-align:center}.priority-scores-loading .spinner{animation:spin 1s linear infinite;border:3px solid #2d2d44;border-top-color:#6366f1;border:3px solid var(--border-color,#2d2d44);border-radius:50%;border-top-color:var(--accent-primary,#6366f1);height:48px;margin-bottom:16px;width:48px}.priority-scores-empty p,.priority-scores-loading p{color:#a0a0b0;color:var(--text-secondary,#a0a0b0);margin:0}.priority-scores-empty svg{color:#6b6b7b;color:var(--text-tertiary,#6b6b7b);margin-bottom:16px}.priority-scores-error{color:#ef4444;color:var(--accent-danger,#ef4444)}.priority-scores-error svg{margin-bottom:16px}.priority-scores-error button{background:#6366f1;background:var(--accent-primary,#6366f1);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;margin-top:16px;padding:8px 16px}.priority-scores-error button:hover{background:#5558e3;background:var(--accent-primary-hover,#5558e3)}.score-explanation{position:relative}.score-explanation .tooltip{background:#1a1a2e;background:var(--bg-primary,#1a1a2e);border:1px solid #2d2d44;border:1px solid var(--border-color,#2d2d44);border-radius:6px;bottom:100%;color:#a0a0b0;color:var(--text-secondary,#a0a0b0);font-size:.75rem;left:50%;opacity:0;padding:8px 12px;position:absolute;transform:translateX(-50%);transition:all .2s ease;visibility:hidden;white-space:nowrap;z-index:10}.score-explanation:hover .tooltip{opacity:1;visibility:visible}@media (max-width:768px){.priority-scores-modal{border-radius:0;max-height:100vh}.summary-header{grid-template-columns:repeat(2,1fr)}.summary-sections,.weight-sliders{grid-template-columns:1fr}.priority-item-main{flex-wrap:wrap}.priority-item-scores{justify-content:flex-start;margin-top:8px;width:100%}.score-breakdown{grid-template-columns:repeat(2,1fr)}}.scan-detail{margin:0 auto;max-width:1200px;padding:2rem}.scan-header{align-items:flex-start;gap:2rem;margin-bottom:2rem}.scan-info{flex:1 1;min-width:0}.back-button{align-items:center;background-color:initial;border:1px solid #d1d5db;border-radius:6px;color:#374151;display:inline-flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s ease-in-out}.back-button:hover{background-color:#f9fafb;border-color:#9ca3af;text-decoration:none}.scan-title{color:#111827;font-size:2rem;font-weight:700;line-height:1.2;margin:0 0 .5rem}.scan-status-bar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.status-badge{gap:.5rem;letter-spacing:.025em;white-space:nowrap}.status-pending{background-color:#fef3c7;border:1px solid #fde68a;color:#f59e0b}.status-running{background-color:#dbeafe;border:1px solid #bfdbfe}.status-paused{background-color:#f3e8ff;border:1px solid #e9d5ff;color:#8b5cf6}.status-completed{background-color:#d1fae5;border:1px solid #a7f3d0}.status-failed{background-color:#fef2f2;border:1px solid #fecaca}.status-cancelled,.status-stopped{background-color:#f3f4f6;border:1px solid #d1d5db;color:#6b7280}.scan-timestamp{color:#6b7280;font-size:.875rem}.scan-description{color:#6b7280;line-height:1.5;margin:.5rem 0}.scan-actions{align-items:flex-start;flex-wrap:wrap;gap:.5rem}.action-button{align-items:center;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s ease-in-out;white-space:nowrap}.action-button:disabled{cursor:not-allowed;opacity:.6}.action-button.primary{background-color:#3b82f6;color:#fff}.action-button.primary:hover:not(:disabled){background-color:#2563eb}.action-button.success{background-color:#10b981;color:#fff}.action-button.success:hover:not(:disabled){background-color:#059669}.action-button.warning{background-color:#f59e0b;color:#fff}.action-button.warning:hover:not(:disabled){background-color:#d97706}.action-button.danger{background-color:#ef4444;color:#fff}.action-button.danger:hover:not(:disabled){background-color:#dc2626}.action-button.secondary{background-color:#fff;border:1px solid #d1d5db;color:#374151}.action-button.secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.scan-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.section-title{color:#111827;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.findings-overview{display:flex;flex-wrap:wrap;gap:1rem}.finding-stat{background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;flex:1 1;max-width:120px;min-width:80px;padding:1rem;text-align:center}.stat-label{text-transform:capitalize}.targets-grid{grid-gap:.5rem;display:grid;gap:.5rem}.target-item{background-color:#f9fafb;border:1px solid #e5e7eb}.target-icon{color:#6b7280;text-align:center;width:16px}.target-name{color:#111827}.target-address{color:#6b7280;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem}.no-results{color:#6b7280;padding:3rem;text-align:center}.no-results i{color:#d1d5db;font-size:3rem;margin-bottom:1rem}.no-results h3{color:#374151;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.no-results p{line-height:1.5;margin:.5rem auto;max-width:500px}.loading-container{height:200px}.loading-content{text-align:center}.loading-spinner{color:#3b82f6;font-size:2rem;margin-bottom:1rem}.error-container{color:#ef4444;padding:3rem}.error-icon{font-size:3rem;margin-bottom:1rem}.error-title{color:#111827;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.error-description{color:#6b7280;margin:.5rem 0 2rem}.notification{animation:slideInRight .3s ease-out;border-radius:8px;box-shadow:0 10px 25px #0000001a;max-width:400px;padding:1rem 1.5rem;position:fixed;right:1rem;top:1rem;z-index:1000}.notification.success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.notification.error{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.notification-content{align-items:center;display:flex;gap:.5rem}@media (max-width:768px){.scan-detail{padding:1rem}.scan-header{flex-direction:column;gap:1rem}.scan-actions{justify-content:stretch;width:100%}.action-button{flex:1 1;justify-content:center;min-width:0}.scan-title{font-size:1.5rem}.scan-status-bar{gap:.5rem}.status-badge{font-size:.75rem;padding:.375rem .75rem}.findings-overview{gap:.5rem}.finding-stat{min-width:60px;padding:.75rem .5rem}.stat-value{font-size:1.25rem}.stat-label{font-size:.75rem}}@media print{.scan-detail{padding:0}.notification,.scan-actions{display:none}.scan-section{border:1px solid #000;box-shadow:none;page-break-inside:avoid}.back-button{display:none}}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.agent-modal{background:#fff;border-radius:16px;box-shadow:0 20px 50px #0003;display:flex;flex-direction:column;max-height:calc(100vh - 2rem);max-width:560px;overflow:hidden;width:100%}.modal-header{flex-shrink:0;padding:1.25rem 1.5rem}.modal-header h2{gap:.75rem}.modal-header h2 i{color:#3b82f6}.close-btn{align-items:center;border-radius:8px;color:#6b7280;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.close-btn:hover{background:#f3f4f6;color:#111827}.error-message{font-size:.875rem;gap:.75rem;margin-bottom:1.25rem;padding:.875rem 1rem}.form-group label{align-items:center;display:flex;gap:.5rem}.form-group label i{color:#6b7280;font-size:.8125rem}.required{color:#dc2626}.form-group input[type=number],.form-group input[type=text],.form-group textarea{border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:.875rem;outline:none;padding:.75rem 1rem;transition:all .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{min-height:60px}.help-text{color:#6b7280;display:block;font-size:.75rem;margin-top:.375rem}.toggle-switch{align-items:center;display:flex}.toggle-switch input{display:none}.toggle-label{align-items:center;cursor:pointer;display:flex;gap:.75rem}.toggle-label:before{background:#d1d5db;border-radius:999px;content:"";height:24px;position:relative;transition:all .2s;width:44px}.toggle-label:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:18px;left:3px;position:absolute;transition:all .2s;width:18px}.toggle-switch input:checked+.toggle-label:before{background:#10b981}.toggle-switch input:checked+.toggle-label:after{transform:translateX(20px)}.toggle-text{color:#374151;font-size:.875rem;font-weight:500}.info-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;display:flex;gap:.875rem;margin-top:1rem}.info-box i{color:#3b82f6;flex-shrink:0;margin-top:2px}.info-box strong{display:block;font-weight:600;margin-bottom:.25rem}.info-box p,.info-box strong{color:#1e40af;font-size:.8125rem}.info-box p{line-height:1.5;margin:0}.modal-footer{background:#f9fafb;flex-shrink:0}@media (max-width:600px){.agent-modal{border-radius:0;max-height:100vh}.form-row{grid-template-columns:1fr}}.agent-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;position:relative;transition:all .2s}.agent-card:hover{box-shadow:0 4px 12px #00000014}.agent-card.connected{border-left:4px solid #10b981}.agent-card.disconnected{border-left:4px solid #9ca3af}.agent-card-header{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;gap:1rem;padding:1.25rem}.agent-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.agent-icon i{color:#fff;font-size:1.25rem}.agent-title{flex:1 1;min-width:0}.agent-title h3{color:#111827;font-size:1rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-id{color:#9ca3af;display:block;font-family:monospace;font-size:.75rem;margin-top:.25rem}.agent-badges{align-items:flex-end;display:flex;flex-direction:column;gap:.375rem}.active-badge,.status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.6875rem;font-weight:500;gap:.375rem;letter-spacing:.3px;padding:.25rem .625rem;text-transform:uppercase}.active-badge i,.status-badge i{font-size:.5rem}.status-badge.online{background:#ecfdf5;color:#059669}.status-badge.online i{color:#10b981}.status-badge.offline{background:#f3f4f6;color:#6b7280}.active-badge.active{background:#eff6ff;color:#1d4ed8}.active-badge.inactive{background:#fef3c7;color:#92400e}.agent-description{color:#6b7280;font-size:.8125rem;line-height:1.5;margin:.75rem 0;padding:0 1.25rem}.agent-info{padding:0 1.25rem 1rem}.info-row{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:.5rem 0}.info-row:last-child{border-bottom:none}.info-label{align-items:center;color:#6b7280;display:flex;font-size:.8125rem;gap:.5rem}.info-label i{color:#9ca3af;text-align:center;width:14px}.agent-card .info-value{color:#111827;font-size:.75rem!important;font-weight:500;line-height:1.4;max-width:60%;text-align:right;word-break:break-word}.info-value.project-tag{align-items:center;display:flex}.project-badge{align-items:center;background:#eff6ff;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .625rem}.no-project{color:#9ca3af;font-style:italic;font-weight:400}.agent-details{animation:slideDown .2s ease-out;background:#f9fafb;border-top:1px solid #e5e7eb;padding:0 1.25rem 1rem}.details-section{padding-top:1rem}.details-section h4{align-items:center;color:#374151;display:flex;font-size:.75rem;font-weight:600;gap:.5rem;letter-spacing:.5px;margin:0 0 .75rem;text-transform:uppercase}.details-section h4 i{color:#6b7280}.cidr-list{display:flex;flex-wrap:wrap;gap:.5rem}.cidr-tag{background:#e5e7eb;border-radius:4px;color:#374151;display:inline-block;font-family:monospace;font-size:.75rem;padding:.25rem .5rem}.no-data{color:#9ca3af;font-size:.8125rem;font-style:italic}.agent-card-actions{align-items:center;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:.75rem 1.25rem}.btn-toggle-details{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:.8125rem;gap:.5rem;padding:.375rem 0;transition:color .2s}.btn-toggle-details:hover{color:#3b82f6}.btn-action{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.btn-action i{font-size:.8125rem}.btn-action.edit{color:#6b7280}.btn-action.edit:hover{background:#eff6ff;border-color:#3b82f6;color:#3b82f6}.btn-action.download{color:#6b7280}.btn-action.download:hover{background:#ecfdf5;border-color:#10b981;color:#10b981}.btn-action.delete{color:#6b7280}.btn-action.delete:hover{background:#fef2f2;border-color:#dc2626;color:#dc2626}.confirm-delete-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.confirm-delete-dialog{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;margin:1rem;max-width:320px;padding:1.5rem;text-align:center}.confirm-delete-dialog h4{color:#111827;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.confirm-delete-dialog p{color:#6b7280;font-size:.875rem;margin:0 0 1.25rem}.confirm-actions{display:flex;gap:.75rem;justify-content:center}.btn-cancel{background:#fff;border:1px solid #d1d5db;color:#374151;font-size:.875rem;padding:.5rem 1rem}.btn-cancel:hover:not(:disabled){background:#f3f4f6}.btn-danger{align-items:center;background:#dc2626;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-cancel:disabled,.btn-danger:disabled{cursor:not-allowed;opacity:.6}.agents{margin:0 auto;max-width:1400px;padding:2rem}.agents-loading{align-items:center;color:#6b7280;display:flex;font-size:1rem;gap:.75rem;justify-content:center;padding:4rem}.agents-loading i{color:#3b82f6;font-size:1.5rem}.agents-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:2rem}.agents-header h1{align-items:center;color:#111827;display:flex;font-size:1.75rem;font-weight:600;gap:.75rem;margin:0}.agents-header h1 i{color:#3b82f6}.agents-subtitle{color:#6b7280;font-size:.875rem;margin:.5rem 0 0}.agents-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem}.stat-icon.total{background:#eff6ff;color:#3b82f6}.stat-icon.connected{background:#ecfdf5;color:#10b981}.stat-icon.active{background:#fef3c7;color:#f59e0b}.stat-icon.offline{background:#fef2f2;color:#ef4444}.stat-value{color:#111827}.agents-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem}.agents-error i{font-size:1rem}.agents-error span{flex:1 1;font-size:.875rem}.agents-filters{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1.25rem}.search-box i{color:#9ca3af;font-size:.875rem}.search-box input{border:1px solid #d1d5db;border-radius:8px;outline:none;padding:.75rem 2.5rem;transition:all .2s}.search-box input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.clear-search{color:#9ca3af}.clear-search:hover{color:#6b7280}.filter-row{align-items:center;display:flex;flex-wrap:wrap}.filter-buttons,.project-filter{display:flex;gap:.5rem}.project-filter{align-items:center}.project-filter label{color:#6b7280;font-size:.875rem}.project-filter select{background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#374151;cursor:pointer;font-size:.8125rem;min-width:150px;padding:.5rem 2rem .5rem .75rem}.project-filter select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.filter-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:.8125rem;gap:.375rem;padding:.5rem 1rem;transition:all .2s}.filter-btn:hover{background:#f9fafb;border-color:#d1d5db}.filter-btn.active{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.filter-btn i.fa-circle{font-size:.5rem}.filter-btn i.fa-circle.online{color:#10b981}.filter-btn i.fa-circle.offline{color:#9ca3af}.agents-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.empty-state{border:1px solid #e5e7eb}.empty-state i{margin-bottom:1.5rem}.empty-state h2{color:#111827;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.empty-state p{color:#6b7280;font-size:.875rem;margin:0 auto 1.5rem;max-width:400px}.btn{padding:.625rem 1.25rem}.agents-downloads-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:2rem;overflow:hidden}.downloads-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem 1.25rem}.downloads-header:hover{background:#f1f5f9}.downloads-title{align-items:center;color:#374151;display:flex;font-weight:600;gap:.75rem}.downloads-title i{color:#3b82f6;font-size:1.125rem}.downloads-content{padding:1.5rem}.downloads-description{color:#6b7280;font-size:.875rem;line-height:1.5;margin:0 0 1.5rem}.download-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;display:flex;font-size:.875rem;gap:.75rem;margin-bottom:1rem;padding:.75rem 1rem}.download-error span{flex:1 1}.download-error button{background:none;border:none;color:#991b1b;cursor:pointer;padding:.25rem}.downloads-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:1.5rem}.download-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;gap:1rem;padding:1rem 1.25rem;text-align:left;transition:all .2s}.download-card:hover:not(:disabled){background:#f8fafc;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.download-card:disabled{cursor:not-allowed;opacity:.6}.download-card>i:first-child{color:#6b7280;font-size:1.75rem;text-align:center;width:40px}.download-card .fab.fa-linux{background:#333;border-radius:4px;color:#f0f0f0;padding:6px}.download-card .fab.fa-windows{color:#0078d4}.download-card .fab.fa-apple{color:#333}.download-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.download-name{color:#374151;font-size:.9375rem;font-weight:600}.download-filename{color:#9ca3af;font-family:monospace;font-size:.75rem}.download-action{color:#3b82f6;font-size:1.125rem}.downloads-help{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:1.25rem}.downloads-help h4{align-items:center;color:#374151;display:flex;font-size:.9375rem;font-weight:600;gap:.5rem;margin:0 0 1rem}.downloads-help h4 i{color:#3b82f6}.downloads-help ol{color:#6b7280;font-size:.875rem;line-height:1.8;margin:0;padding-left:1.25rem}.downloads-help code{background:#e5e7eb;border-radius:4px;color:#1f2937;font-size:.8125rem;padding:.25rem .5rem}@media (max-width:1024px){.agents-stats{grid-template-columns:repeat(2,1fr)}.downloads-grid{grid-template-columns:1fr 1fr}}@media (max-width:768px){.agents{padding:1rem}.agents-header{align-items:stretch;flex-direction:column;gap:1rem}.agents-stats{grid-template-columns:repeat(2,1fr)}.agents-filters{align-items:stretch;flex-direction:column}.filter-buttons{flex-wrap:wrap}.agents-grid{grid-template-columns:1fr}}.agent-selector{margin-bottom:1.5rem}.agent-selector label{color:#374151;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.agent-selector .help-text{color:#6b7280;font-size:.8125rem;margin:0 0 .75rem}.selector-container{position:relative}.selector-trigger{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:.875rem 1rem;text-align:left;transition:all .2s;width:100%}.selector-trigger:hover{border-color:#9ca3af}.selector-trigger.expanded{border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.selector-trigger .chevron{color:#6b7280;transition:transform .2s}.selection-display{align-items:center;display:flex;flex:1 1;gap:.75rem}.selection-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.selection-display.local .selection-icon{background:#eff6ff;color:#3b82f6}.selection-display.agent .selection-icon{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff}.selection-info{flex:1 1;min-width:0}.selection-name{color:#111827;display:block;font-size:.875rem;font-weight:500}.selection-detail{color:#6b7280;display:block;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selection-status{align-items:center;border-radius:4px;display:flex;font-size:.75rem;font-weight:500;gap:.375rem;padding:.25rem .5rem}.selection-status.connected,.selection-status.local-status{background:#ecfdf5;color:#059669}.selection-status.disconnected{background:#fef2f2;color:#dc2626}.selector-dropdown{background:#fff;border:1px solid #3b82f6;border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:none;box-shadow:0 4px 12px #00000026;left:0;max-height:400px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.option-item{align-items:center;background:none;border:none;cursor:pointer;display:flex;gap:.75rem;padding:.875rem 1rem;text-align:left;transition:background-color .15s;width:100%}.option-item:hover:not(.disabled){background:#f3f4f6}.option-item.selected{background:#eff6ff}.option-item.disabled{cursor:not-allowed;opacity:.5}.option-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.option-icon.local-icon{background:#eff6ff;color:#3b82f6}.option-icon.agent-icon{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff}.option-icon.agent-icon.offline{background:#e5e7eb;color:#9ca3af}.option-info{flex:1 1;min-width:0}.option-name{color:#111827;display:block;font-size:.875rem;font-weight:500}.option-detail{color:#6b7280;display:block;font-size:.75rem}.option-status{align-items:center;border-radius:4px;display:flex;font-size:.75rem;font-weight:500;gap:.375rem;padding:.25rem .5rem}.option-status.connected,.option-status.ready{background:#ecfdf5;color:#059669}.option-status.offline{background:#f3f4f6;color:#6b7280}.option-divider{background:#f9fafb;border-bottom:1px solid #e5e7eb;border-top:1px solid #e5e7eb;padding:.5rem 1rem}.option-divider span{color:#6b7280;font-size:.6875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.no-agents{padding:1.5rem;text-align:center}.no-agents i{color:#9ca3af;font-size:1.5rem;margin-bottom:.75rem}.no-agents p{color:#6b7280;font-size:.8125rem;margin:0}.no-agents a{color:#3b82f6;text-decoration:none}.no-agents a:hover{text-decoration:underline}.agent-selector.loading .selector-loading{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;display:flex;font-size:.875rem;gap:.5rem;padding:.875rem 1rem}.selector-error,.selector-warning{align-items:center;border-radius:6px;display:flex;font-size:.8125rem;gap:.5rem;margin-top:.5rem;padding:.625rem .875rem}.selector-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.selector-error button{background:#fff;border:1px solid #fecaca;border-radius:4px;color:#991b1b;cursor:pointer;font-size:.75rem;margin-left:auto;padding:.25rem .5rem}.selector-warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.selector-error i,.selector-warning i{flex-shrink:0}.vulndata-main{background:#f8fafc;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.vulndata-header{margin-bottom:2rem}.vulndata-header h1{align-items:center;color:#1e293b;display:flex;font-size:2rem;font-weight:700;margin:0 0 .5rem}.vulndata-header p{color:#64748b;font-size:1.1rem;margin:0}.stats-overview{margin-bottom:3rem}.stat-card{transition:all .2s ease}.stat-card.primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;color:#fff}.stat-card.primary .stat-icon i{color:#fff!important}.stat-icon{background:#f1f5f9}.stat-card.primary .stat-icon{background:#fff3}.stat-label{opacity:.8}.sources-breakdown{margin-bottom:3rem}.sources-breakdown h2{align-items:center;color:#1e293b;display:flex;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.sources-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.source-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s ease}.source-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.source-card.cve{border-left:4px solid #dc2626}.source-card.exploitdb{border-left:4px solid #ea580c}.source-card.custom{border-left:4px solid #3b82f6}.source-card.nuclei{border-left:4px solid #00d4aa}.source-header{gap:.75rem}.source-header i{font-size:1.5rem}.source-header h3{color:#1e293b;font-size:1.125rem;font-weight:600;margin:0}.source-stats{margin-bottom:1rem}.source-count{color:#1e293b;font-size:2rem;font-weight:700;line-height:1}.source-label{color:#64748b;font-size:.875rem}.source-link{align-items:center;color:#3b82f6;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;text-decoration:none;transition:color .2s ease}.source-link:hover{color:#1d4ed8}.severity-distribution{margin-bottom:3rem}.severity-bars{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.severity-bar{margin-bottom:1rem}.severity-bar:last-child{margin-bottom:0}.severity-info{gap:.75rem;margin-bottom:.5rem}.severity-info i{width:20px}.severity-info span:first-of-type{color:#1e293b;flex:1 1;font-weight:500}.severity-count{color:#64748b}.severity-progress{background:#f1f5f9}.severity-fill{border-radius:4px}.quick-actions{margin-bottom:3rem}.actions-grid{grid-gap:1.5rem;gap:1.5rem}.action-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s ease}.action-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.action-icon{background:#eff6ff;border-radius:50%;flex-shrink:0;font-size:1.5rem;height:48px;width:48px}.action-arrow{transition:color .2s ease}.activity-list{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a}.activity-item{border-bottom:1px solid #f1f5f9;padding:1rem 1.5rem}.activity-item:last-child{border-bottom:none}.activity-icon{background:#f8fafc;flex-shrink:0;height:40px;width:40px}.activity-title{font-weight:500}.no-activity{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a}.no-activity i{margin-right:.5rem}@media (max-width:768px){.vulndata-main{padding:1rem}.actions-grid,.sources-grid,.stats-overview{grid-template-columns:1fr}.action-card,.source-card,.stat-card{padding:1rem}}.vulndata-rules{background:#f8fafc;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.rules-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem}.btn-warning{background:#f59e0b}.filters-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.filters-grid{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr 1fr auto}.filter-input,.filter-select{background:#fff;border-radius:6px;transition:border-color .2s ease}.results-summary{align-items:center;justify-content:space-between;margin-bottom:1rem;padding:0 .5rem}.summary-pagination,.summary-text{color:#64748b;font-size:.875rem}.loading-state{align-items:center;color:#64748b;display:flex;gap:1rem;justify-content:center;padding:3rem}.loading-state i{color:#3b82f6;font-size:1.5rem}.rules-list{display:flex;flex-direction:column;gap:1rem}.rule-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s ease}.rule-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000001a}.rule-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.rule-main-info{flex:1 1}.rule-title{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:.5rem}.rule-title h3{color:#1e293b;flex:1 1;font-size:1.125rem;font-weight:600;margin:0}.rule-badges{display:flex;flex-wrap:wrap;gap:.5rem}.severity-badge,.source-badge,.status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .75rem}.source-badge{background:#eff6ff;color:#1d4ed8}.status-badge.inactive{background:#fef3c7;color:#92400e}.rule-meta{display:flex;flex-wrap:wrap;gap:1rem}.meta-item{color:#64748b;gap:.25rem}.meta-item i{color:#94a3b8}.rule-actions{display:flex;flex-shrink:0;gap:.5rem}.rule-description{margin-bottom:1rem}.rule-description p{color:#64748b;line-height:1.5;margin:0}.rule-targets{display:flex;flex-wrap:wrap;gap:1rem}.target-item{background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:.8125rem;gap:.25rem;padding:.25rem .75rem}.target-item i{color:#64748b}.pagination{margin-top:2rem}.pagination-info{color:#64748b}.rule-detail-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.detail-group{display:flex;flex-direction:column;gap:.5rem}.detail-group.full-width{grid-column:1/-1}.detail-group label{color:#374151;font-size:.875rem;font-weight:500}.detail-group span{color:#64748b}.references-list{display:flex;flex-direction:column;gap:.25rem}.references-list a{color:#3b82f6;font-size:.875rem;text-decoration:none}.references-list a:hover{text-decoration:underline}@media (max-width:1024px){.rules-header{align-items:stretch;flex-direction:column}.filters-grid{gap:1rem;grid-template-columns:1fr}.rule-header{align-items:stretch;flex-direction:column}.rule-title{align-items:flex-start;flex-direction:column}.rule-badges{margin-top:.5rem}.rule-actions{justify-content:flex-end;margin-top:1rem}}@media (max-width:768px){.vulndata-rules{padding:1rem}.rule-detail-grid{grid-template-columns:1fr}.modal{margin:1rem;width:calc(100% - 2rem)}}.vulndata-databases{margin:0 auto;max-width:1400px;padding:2rem}.databases-header{margin-bottom:2rem}.header-content h1{color:#1f2937}.back-link{border-radius:6px;color:#6b7280;margin-right:1rem;transition:background-color .2s ease}.back-link:hover{background-color:#f3f4f6;color:#374151}.header-content p{font-size:1.125rem}.success-banner{color:#166534}.databases-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-bottom:2rem}.database-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s ease}.database-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000026}.database-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.database-info{flex:1 1}.database-title{align-items:center;display:flex;gap:1rem;margin-bottom:.75rem}.database-icon{font-size:2rem}.database-title h3{color:#1f2937;font-size:1.25rem;margin:0}.database-badges{display:flex;flex-wrap:wrap;gap:.5rem}.status-badge,.type-badge{display:inline-flex;gap:.25rem;padding:.25rem .5rem}.status-badge.active{background-color:#dcfce7;color:#166534}.status-badge.inactive{background-color:#f3f4f6}.database-actions{display:flex;gap:.5rem}.database-description{margin-bottom:1rem}.database-description p{color:#6b7280;line-height:1.5;margin:0}.database-stats{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.stat-item{color:#6b7280}.stat-item i{color:#9ca3af}.database-footer{border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:1rem;padding-top:1rem}.import-actions{flex-wrap:wrap}.btn-primary:hover{border-color:#2563eb}.btn-secondary:hover{border-color:#4b5563}.btn-success{background-color:#10b981}.btn-success:hover{background-color:#059669;border-color:#059669}.btn-warning{background-color:#f59e0b;border-color:#f59e0b}.btn-warning:hover{background-color:#d97706;border-color:#d97706}.btn-danger{background-color:#ef4444}.btn-danger:hover{background-color:#dc2626;border-color:#dc2626}.modal{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow-y:auto}.modal-header h2{align-items:center;display:flex}.modal-close{border-radius:6px;transition:all .2s ease}.modal-close:hover{background-color:#f3f4f6}.modal-footer{gap:1rem}.config-checkbox input[type=checkbox]{margin:0}.config-input,.config-select{transition:all .2s ease}.config-input:disabled,.config-select:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.config-group small{font-size:.8125rem}.enhanced-import-modal{max-height:90vh;max-width:800px;overflow-y:auto}.import-presets{margin-bottom:2rem}.preset-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1rem}.preset-card{border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:1rem;transition:all .2s ease}.preset-card:hover{background-color:#f8fafc;border-color:#3b82f6}.preset-card.selected{background-color:#eff6ff;border-color:#3b82f6}.preset-card h4{color:#1f2937;margin:0 0 .5rem}.preset-card p{color:#6b7280;font-size:.875rem;margin:0 0 .5rem}.preset-card small{color:#9ca3af;font-size:.75rem}.date-range span{color:#6b7280;font-size:.875rem}.import-summary{background-color:#f8fafc;border-radius:8px;margin-top:1.5rem;padding:1rem}.summary-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1rem}.summary-item{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;justify-content:space-between;padding:.5rem}.summary-value{font-weight:600}.file-import-modal{max-width:700px}.file-upload-section{margin-bottom:2rem}.file-drop-zone{background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;cursor:pointer;padding:3rem 2rem;text-align:center;transition:all .2s ease}.file-drop-zone.drag-over,.file-drop-zone:hover{background-color:#eff6ff;border-color:#3b82f6}.file-drop-zone i{color:#9ca3af;font-size:3rem;margin-bottom:1rem}.file-drop-zone p{color:#374151;font-size:1.125rem;margin:.5rem 0}.file-drop-zone small{color:#6b7280}.file-selected{background-color:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;justify-content:space-between;padding:1rem}.file-info,.file-selected{align-items:center;display:flex}.file-info{gap:1rem}.file-info i{color:#0ea5e9;font-size:1.5rem}.file-info strong{color:#0c4a6e}.file-info small{color:#075985;display:block}.validation-results{border:1px solid #e5e7eb;border-radius:8px;margin-top:1.5rem;padding:1rem}.validation-stats{display:flex;gap:1rem;margin-bottom:1rem}.stat-item{background-color:#f8fafc;border-radius:6px;min-width:100px;padding:.75rem}.stat-item.error{background-color:#fef2f2;color:#dc2626}.stat-number{display:block;font-size:1.25rem}.preview-rules{margin-top:1rem}.preview-rule{align-items:center;background-color:#f8fafc;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.5rem}.rule-severity{border-radius:4px;font-size:.75rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.validation-errors{margin-top:1rem}.error-item{background-color:#fef2f2;border:1px solid #fecaca;border-radius:4px;color:#dc2626;font-size:.875rem;margin-bottom:.5rem;padding:.5rem}@media (max-width:768px){.vulndata-databases{padding:1rem}.databases-grid{gap:1rem;grid-template-columns:1fr}.database-header{flex-direction:column;gap:1rem}.database-actions{align-self:flex-start}.import-actions{flex-direction:column}.enhanced-import-modal,.file-import-modal{margin:1rem;max-width:95vw}.preset-grid,.summary-grid{grid-template-columns:1fr}.date-range{align-items:stretch}.date-range,.file-selected,.validation-stats{flex-direction:column}.file-selected{align-items:stretch;gap:1rem}}@media (max-width:480px){.modal{margin:.5rem;max-height:95vh}.modal-body,.modal-footer,.modal-header{padding:1rem}.header-content h1{font-size:1.5rem}.database-stats{flex-direction:column;gap:.5rem}}.vulndata-imports{background:#f8fafc;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.imports-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem}.header-content h1{color:#1e293b;font-size:2rem}.back-link{border-radius:50%;color:#64748b;transition:all .2s ease}.back-link:hover{background:#f1f5f9;color:#3b82f6}.header-content p{color:#64748b;font-size:1.1rem}.header-actions{flex-shrink:0}.btn-sm{font-size:.8125rem}.error-banner{background:#fef2f2;border-radius:8px;gap:.5rem}.empty-state{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;color:#64748b}.empty-state i{color:#cbd5e1}.imports-list{display:flex;flex-direction:column;gap:1.5rem}.import-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s ease}.import-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000001a}.import-header{gap:1rem;margin-bottom:1rem}.import-info{flex:1 1;justify-content:space-between}.import-info,.import-title{align-items:flex-start;display:flex;gap:1rem}.database-icon{align-items:center;background:#f8fafc;border-radius:50%;color:#3b82f6;display:flex;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;width:48px}.import-title h3{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.import-meta{display:flex;flex-wrap:wrap;gap:1rem}.import-date,.import-id{color:#64748b;font-size:.8125rem}.import-status{align-items:flex-start;display:flex}.status-badge{font-size:.875rem;padding:.5rem 1rem}.import-actions{display:flex;flex-shrink:0;gap:.5rem}.import-progress{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:1rem}.progress-info{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.progress-text{color:#374151;font-size:.875rem;font-weight:500}.progress-percent{color:#64748b;font-size:.875rem;font-weight:600}.progress-bar{background:#e2e8f0;height:8px;width:100%}.progress-bar,.progress-fill{border-radius:4px}.import-stats{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem}.stat-item{color:#64748b;font-size:.875rem;gap:.5rem}.stat-item i{color:#94a3b8}.import-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;display:flex;font-size:.875rem;gap:.5rem;padding:1rem}.modal{background:#fff;box-shadow:0 20px 25px -5px #0000001a;max-height:80vh;max-width:800px;width:100%}.log-modal{max-width:900px}.modal-header{border-bottom:1px solid #e2e8f0}.modal-header h2{color:#1e293b}.modal-close{color:#64748b;font-size:1.25rem;padding:.5rem}.modal-close:hover{background:#f1f5f9}.modal-body{max-height:60vh}.log-sections{display:flex;flex-direction:column;gap:1.5rem}.log-section{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.log-section h3{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#374151;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin:0;padding:1rem}.log-content{word-wrap:break-word;background:#1e293b;color:#e2e8f0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8125rem;line-height:1.5;margin:0;max-height:300px;overflow-y:auto;padding:1rem;white-space:pre-wrap}.log-content.error{background:#7f1d1d;color:#fecaca}.no-logs{align-items:center;color:#64748b;display:flex;gap:.5rem;justify-content:center;padding:2rem;text-align:center}@media (max-width:1024px){.import-header,.import-info,.imports-header{align-items:stretch;flex-direction:column}.import-actions{justify-content:flex-end;margin-top:1rem}}@media (max-width:768px){.vulndata-imports{padding:1rem}.import-title{align-items:flex-start;flex-direction:column}.import-meta{flex-direction:column;gap:.5rem}.import-stats{flex-direction:column;gap:.75rem}.progress-info{align-items:flex-start;flex-direction:column;gap:.25rem}.modal{margin:1rem;width:calc(100% - 2rem)}.log-modal{max-width:none}}.vulndata-config{background-color:#f8fafc;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.config-header{margin-bottom:2rem}.config-header .header-content h1{align-items:center;color:#111827;display:flex;font-size:1.875rem;font-weight:700;margin:0 0 .5rem}.config-header .back-link{border-radius:4px;color:#6b7280;margin-right:1rem;padding:.5rem;text-decoration:none;transition:all .2s ease}.config-header .back-link:hover{background-color:#f3f4f6;color:#3b82f6}.config-header p{color:#6b7280;font-size:1rem;margin:0}.config-tabs{border-bottom:1px solid #e5e7eb;display:flex;margin-bottom:2rem}.tab-button{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:.5rem;padding:1rem 1.5rem}.tab-button:hover{background-color:#f9fafb;color:#374151}.tab-button.active{background-color:#eff6ff}.tab-button i{font-size:1rem}.error-banner,.success-banner{border-radius:8px;gap:.5rem;padding:1rem 1.25rem}.success-banner{background-color:#f0f9ff;border:1px solid #bae6fd}.config-form{display:flex;flex-direction:column;gap:2rem}.config-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:2rem}.section-header{margin-bottom:1.5rem}.section-header h2{font-size:1.25rem;margin:0 0 .5rem}.config-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.config-group.checkbox-group{align-items:center;flex-direction:row;gap:1rem}.config-group label{color:#374151;font-size:.875rem;font-weight:500}.config-group small{color:#6b7280;font-size:.75rem;line-height:1.4}.config-input,.config-select{background-color:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.75rem;transition:border-color .2s ease,box-shadow .2s ease}.config-input:focus,.config-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.config-range{-webkit-appearance:none;appearance:none;background:#e5e7eb;border-radius:3px;cursor:pointer;height:6px;outline:none;width:100%}.config-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#3b82f6;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:20px;width:20px}.config-range::-moz-range-thumb{background:#3b82f6;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:20px;width:20px}.range-value{color:#3b82f6;font-size:.875rem;font-weight:600;margin-top:.5rem;text-align:center}.config-checkbox{align-items:center;color:#374151;cursor:pointer;display:flex;font-weight:500;gap:.5rem}.config-checkbox input[type=checkbox]{cursor:pointer;height:16px;width:16px}.config-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.info-item{color:#6b7280;font-size:.875rem;gap:.5rem}.config-actions,.info-item{align-items:center;display:flex}.config-actions{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;justify-content:space-between;padding:1.5rem}.btn-outline:hover{border-color:#9ca3af}.btn-primary{box-shadow:0 1px 3px #3b82f640}.btn-primary:hover:not(:disabled){box-shadow:0 4px 6px #3b82f640}.btn:disabled{transform:none!important}@media (max-width:768px){.vulndata-config{padding:1rem}.config-section{padding:1.5rem}.config-grid{grid-template-columns:1fr}.config-actions{flex-direction:column;gap:1rem}.config-actions .btn{justify-content:center;width:100%}.config-header .header-content h1{font-size:1.5rem}}@media (max-width:480px){.config-header .header-content h1{align-items:flex-start;flex-direction:column;gap:.5rem}.config-header .back-link{margin-right:0}}.cve-import{margin:0 auto;max-width:1400px;padding:1.5rem}.cve-import.loading-container{align-items:center;display:flex;justify-content:center;min-height:400px}.loading-spinner{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;gap:1rem}.loading-spinner i{color:var(--accent-primary);font-size:2rem}.import-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.import-header h1{align-items:center;color:var(--text-primary);display:flex;font-size:1.5rem;gap:.75rem;margin:0}.import-header h1 i{color:var(--accent-primary)}.import-header p{color:var(--text-secondary);margin:.5rem 0 0 2.5rem}.back-link{border-radius:.375rem;color:var(--text-secondary);margin-right:.5rem;padding:.5rem;text-decoration:none;transition:all .2s}.back-link:hover{background:var(--bg-hover);color:var(--accent-primary)}.sync-status-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;margin-bottom:1.5rem}.status-header{border-bottom:1px solid var(--border-color);padding:1rem}.status-header h3{align-items:center;color:var(--text-primary);display:flex;font-size:1rem;gap:.5rem;margin:0}.status-header h3 i{color:var(--accent-primary)}.status-content{flex-wrap:wrap;gap:2rem;padding:1rem}.status-item{gap:.5rem}.status-label{color:var(--text-secondary);font-size:.875rem}.status-value{align-items:center;color:var(--text-primary);display:flex;font-weight:500;gap:.5rem}.status-value.running{color:var(--accent-primary)}.status-value.idle i{color:#10b981}.error-banner{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:.5rem;color:#ef4444;display:flex;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.import-result{background:var(--bg-secondary);border:1px solid #10b981;border-radius:.5rem;margin-bottom:1.5rem;overflow:hidden}.result-header{background:#10b9811a;border-bottom:1px solid #10b98133;padding:1rem}.result-header h3{align-items:center;color:#10b981;display:flex;gap:.5rem;margin:0}.result-stats{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1rem}.result-stats .stat-item{background:var(--bg-tertiary);border-radius:.375rem;padding:.5rem 1rem;text-align:center}.result-stats .stat-value{color:var(--text-primary);display:block;font-size:1.5rem;font-weight:600}.result-stats .stat-item.success .stat-value{color:#10b981}.result-stats .stat-item.info .stat-value{color:var(--accent-primary)}.result-stats .stat-item.error .stat-value{color:#ef4444}.result-stats .stat-label{color:var(--text-secondary);font-size:.75rem;text-transform:uppercase}.result-errors{background:#ef44440d;border-top:1px solid var(--border-color);padding:1rem}.result-errors h4{color:#ef4444;font-size:.875rem;margin:0 0 .5rem}.result-errors ul{color:var(--text-secondary);font-size:.875rem;margin:0;padding-left:1.25rem}.result-errors .more{color:var(--text-tertiary);font-style:italic}.presets-section{margin-bottom:2rem}.presets-section h2{align-items:center;color:var(--text-primary);display:flex;font-size:1.25rem;gap:.5rem;margin:0 0 .5rem}.presets-section h2 i{color:#f59e0b}.section-desc{color:var(--text-secondary);margin:0 0 1.5rem}.presets-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.preset-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;display:flex;flex-direction:column;gap:1rem;padding:1.25rem;transition:all .2s}.preset-card:hover{border-color:var(--accent-primary);box-shadow:0 4px 12px #0000001a}.preset-icon{align-items:center;border-radius:.5rem;display:flex;font-size:1.5rem;height:48px;justify-content:center;width:48px}.preset-card.kev .preset-icon{background:#ef44441a;color:#ef4444}.preset-card.critical-recent .preset-icon{background:#dc26261a;color:#dc2626}.preset-card.critical-high-90d .preset-icon{background:#ea580c1a;color:#ea580c}.preset-card.high-cvss .preset-icon{background:#d977061a;color:#d97706}.preset-card.web-servers .preset-icon{background:#3b82f61a;color:#3b82f6}.preset-card.databases .preset-icon{background:#10b9811a;color:#10b981}.preset-card.cms .preset-icon{background:#21759b1a;color:#21759b}.preset-content{flex:1 1}.preset-content h3{color:var(--text-primary);font-size:1rem;margin:0 0 .5rem}.preset-content p{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0}.preset-card .btn{width:100%}.advanced-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem}.advanced-toggle{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:1rem;transition:all .2s;width:100%}.advanced-toggle:hover{background:var(--bg-hover)}.advanced-toggle i{color:var(--text-secondary)}.advanced-form{border-top:1px solid var(--border-color);padding:1.5rem}.form-row{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.form-group input[type=date],.form-group input[type=number],.form-group input[type=text]{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-primary);font-size:.875rem;padding:.625rem .75rem}.form-group input:focus{border-color:var(--accent-primary);outline:none}.form-group small{color:var(--text-tertiary);font-size:.75rem}.date-range{align-items:center;display:flex;gap:.5rem}.date-range input{flex:1 1}.date-range span{color:var(--text-secondary)}.severity-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.severity-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-secondary);cursor:pointer;font-size:.75rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.severity-btn:hover{border-color:var(--text-secondary)}.severity-btn.active{color:#fff}.severity-btn.critical.active{background:#dc2626;border-color:#dc2626}.severity-btn.high.active{background:#ea580c;border-color:#ea580c}.severity-btn.medium.active{background:#d97706;border-color:#d97706}.severity-btn.low.active{background:#059669;border-color:#059669}.checkbox-group label{align-items:flex-start}.checkbox-group input[type=checkbox]{margin-top:.125rem}.checkbox-group span{color:var(--text-primary);font-weight:400}.form-actions{margin-top:2rem;padding-top:1.5rem}.btn-lg{font-size:1rem;padding:.75rem 2rem}@media (max-width:768px){.import-header{flex-direction:column;gap:1rem}.status-content{flex-direction:column;gap:.75rem}.form-row,.presets-grid{grid-template-columns:1fr}.result-stats{justify-content:center}}.retirejs-main{background-color:#f8fafc;margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.retirejs-header{margin-bottom:2rem}.header-content{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between}.header-text h1{align-items:center;color:#1e293b;display:flex;font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.header-text p{color:#64748b;font-size:1.125rem;margin:0}.btn{font-weight:600}.btn-primary:hover{transform:translateY(-1px)}.stats-overview{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card:hover{box-shadow:0 4px 12px #00000026}.stat-card.primary{border-left:4px solid #3b82f6}.stat-icon{background-color:#f1f5f9;border-radius:8px;font-size:1.5rem}.stat-number{color:#1e293b}.stat-label{font-weight:600}.stat-sublabel{color:#94a3b8;font-size:.75rem;margin-top:.125rem}.stat-status{margin-bottom:.5rem}.status-badge.success{background-color:#dcfce7;color:#166534}.status-badge.warning{background-color:#fef3c7;color:#92400e}.status-badge.error{background-color:#fee2e2;color:#991b1b}.status-badge.secondary{background-color:#f1f5f9;color:#475569}.severity-distribution{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem}.severity-distribution h2{align-items:center;color:#1e293b;display:flex;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.severity-bars{display:flex;flex-direction:column;gap:1rem}.severity-bar{flex-direction:column;gap:.5rem}.severity-info{align-items:center;display:flex;font-weight:600;gap:.5rem}.severity-count{font-weight:700;margin-left:auto}.severity-progress{background-color:#f1f5f9;border-radius:4px;height:8px;overflow:hidden}.severity-fill{height:100%;transition:width .3s ease}.severity-bar.critical .severity-info{color:#dc2626}.severity-bar.high .severity-info{color:#ea580c}.severity-bar.medium .severity-info{color:#ca8a04}.severity-bar.low .severity-info{color:#65a30d}.quick-actions{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:1.5rem}.quick-actions h2{align-items:center;color:#1e293b;display:flex;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.actions-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.action-card{align-items:center;border:1px solid #e2e8f0;border-radius:8px;color:inherit;cursor:pointer;display:flex;gap:1rem;padding:1rem;text-decoration:none;transition:all .2s}.action-card:hover{background-color:#f8fafc;border-color:#3b82f6;transform:translateY(-1px)}.action-icon{align-items:center;background-color:#f1f5f9;border-radius:8px;display:flex;font-size:1.25rem;height:40px;justify-content:center;width:40px}.action-content{flex:1 1}.action-content h3{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 .25rem}.action-content p{color:#64748b;font-size:.875rem;margin:0}.action-arrow{color:#94a3b8;transition:all .2s}.action-card:hover .action-arrow{color:#3b82f6;transform:translateX(2px)}.recent-activity{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.recent-activity h2{align-items:center;color:#1e293b;display:flex;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.activity-item{gap:1rem;padding:1rem}.activity-icon,.activity-item{align-items:center;display:flex}.activity-icon{background-color:#f1f5f9;border-radius:50%;font-size:1rem;height:32px;justify-content:center;width:32px}.activity-content{flex:1 1}.activity-title{color:#1e293b;font-weight:600;margin-bottom:.25rem}.activity-details{color:#64748b;font-size:.875rem}.no-activity{align-items:center;display:flex;gap:.5rem;justify-content:center;padding:2rem}@media (max-width:768px){.retirejs-main{padding:1rem}.header-content{align-items:stretch;flex-direction:column;gap:1rem}.header-text h1{font-size:2rem}.actions-grid,.stats-overview{grid-template-columns:1fr}.stat-card{flex-direction:column;gap:.75rem;text-align:center}.stat-icon{align-self:center}}@media (max-width:480px){.header-text h1{font-size:1.75rem}.stat-number{font-size:1.5rem}.action-card,.activity-item{flex-direction:column;gap:.75rem;text-align:center}}.nuclei-template-manager{margin:0 auto;max-width:1400px;padding:1.5rem}.template-header{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1rem}.header-content h2{align-items:center;color:#1f2937;display:flex;font-size:1.875rem;font-weight:700;margin:0 0 .5rem}.header-content p{color:#6b7280;font-size:1rem;margin:0}.loading-container i{color:#3b82f6}.error-banner,.success-banner{align-items:center;border-radius:.5rem;display:flex;font-weight:500;margin-bottom:1.5rem;padding:1rem}.error-banner{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.success-banner{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#059669}.error-banner i,.success-banner i{font-size:1.125rem;margin-right:.75rem}.close-btn{background:none;border:none;border-radius:.25rem;color:inherit;cursor:pointer;margin-left:auto;padding:.25rem;transition:background-color .2s}.close-btn:hover{background-color:#0000001a}.stats-grid{margin-bottom:2rem}.stat-card{border-radius:.75rem;transition:all .2s}.stat-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000001a}.stat-icon{background-color:#f8fafc;border-radius:.75rem;flex-shrink:0;height:3rem;width:3rem}.stat-icon i{font-size:1.5rem}.stat-value{font-size:1.875rem}.template-filters{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;margin-bottom:2rem;padding:1.5rem}.filter-row{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr 1fr auto}.filter-input,.filter-select{border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;padding:.75rem;transition:border-color .2s}.filter-input:focus,.filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.filter-checkbox{color:#374151;font-size:.875rem;gap:.5rem}.filter-checkbox input[type=checkbox]{accent-color:#3b82f6;height:1rem;width:1rem}.templates-list{grid-gap:1.5rem;display:grid;gap:1.5rem;margin-bottom:2rem}.template-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;transition:all .2s}.template-card:hover{border-color:#d1d5db;box-shadow:0 4px 6px -1px #0000001a}.template-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.template-info{flex:1 1}.template-name{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.template-meta{color:#6b7280;display:flex;font-size:.875rem;gap:1rem}.template-id{background-color:#f3f4f6;border-radius:.25rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;padding:.125rem .375rem}.template-badges{display:flex;flex-wrap:wrap;gap:.5rem}.category-badge,.custom-badge,.severity-badge,.type-badge,.verified-badge{border-radius:9999px;font-size:.75rem;font-weight:600;letter-spacing:.025em;padding:.25rem .75rem;text-transform:uppercase}.category-badge{background-color:#e0e7ff;color:#3730a3}.type-badge{background-color:#ecfdf5;color:#065f46}.custom-badge{background-color:#fef3c7;color:#92400e}.verified-badge{background-color:#d1fae5;color:#065f46}.template-description{color:#4b5563;line-height:1.5;margin-bottom:1rem}.template-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tag{background-color:#f3f4f6;border-radius:.375rem;padding:.25rem .5rem}.template-footer{align-items:center;border-top:1px solid #f3f4f6;display:flex;justify-content:space-between;padding-top:1rem}.template-stats{color:#6b7280;display:flex;font-size:.875rem;gap:1rem}.template-stats span{align-items:center;display:flex;gap:.375rem}.template-actions{display:flex;gap:.5rem}.empty-state{color:#6b7280}.empty-state i{color:#d1d5db;font-size:4rem}.empty-state h3{color:#374151;font-weight:600}.empty-state p{font-size:1rem}.pagination{padding:2rem 0}.btn{border-radius:.5rem;padding:.75rem 1rem}.btn-secondary:hover:not(:disabled){background-color:#4b5563}.btn-success:hover:not(:disabled){background-color:#047857}.btn-warning{background-color:#d97706;color:#fff}.btn-warning:hover:not(:disabled){background-color:#b45309}.btn-danger:hover:not(:disabled){background-color:#b91c1c}.btn-outline{background-color:#fff}.btn-outline:hover:not(:disabled){background-color:#f9fafb}.btn-sm{padding:.5rem .75rem}.modal-overlay{background-color:#00000080}.modal-content{border-radius:.75rem}.modal-content.large{max-width:800px}.modal-header h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.modal-footer{border-top:1px solid #e5e7eb;padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#374151;margin-bottom:.5rem}.form-input{border-radius:.5rem}.checkbox-label{color:#374151;font-size:.875rem;gap:.5rem}.checkbox-label input[type=checkbox]{accent-color:#3b82f6;height:1rem;width:1rem}.template-details{display:flex;flex-direction:column;gap:2rem}.detail-section h4{color:#1f2937;font-size:1.125rem;margin:0 0 1rem}.detail-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-item{gap:.25rem}.detail-item label{font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.detail-item span{color:#374151;font-size:.875rem}@media (max-width:1024px){.filter-row{gap:1rem;grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:768px){.nuclei-template-manager{padding:1rem}.template-header{align-items:stretch}.template-card .template-header,.template-header{flex-direction:column;gap:1rem}.template-badges{justify-content:flex-start}.template-footer{align-items:stretch;flex-direction:column;gap:1rem}.template-actions{justify-content:center}.modal-content{margin:1rem;max-width:none}.detail-grid{grid-template-columns:1fr}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.template-meta{flex-direction:column;gap:.5rem}.pagination{flex-direction:column;gap:1rem}}.help-icon-container{display:inline-block;margin-left:8px;position:relative}.help-icon{color:#6b7280;cursor:help;font-size:14px;transition:color .2s ease}.help-icon:hover{color:#374151}.help-tooltip{animation:fadeIn .2s ease-in-out;margin-right:8px;pointer-events:none;position:absolute;right:100%;top:-8px;z-index:1000}.tooltip-content{background:#1f2937;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#fff;font-size:12px;line-height:1.4;max-width:250px;padding:8px 12px;white-space:nowrap;white-space:normal}.tooltip-arrow{border-bottom:6px solid #0000;border-left:6px solid #1f2937;border-top:6px solid #0000;height:0;left:100%;position:absolute;top:50%;transform:translateY(-50%);width:0}@media (max-width:768px){.help-tooltip{left:100%;margin-left:8px;margin-right:0;right:auto}.tooltip-arrow{border-left:none;border-right:6px solid #1f2937;left:-6px}.tooltip-content{max-width:200px}}.security-overview{padding:24px}.security-overview.loading{padding:20px}.overview-skeleton{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.skeleton-card{align-items:center;animation:pulse 2s infinite;background:#f3f4f6;border-radius:8px;display:flex;gap:16px;padding:20px}.skeleton-icon{background:#e5e7eb;border-radius:8px;height:48px;width:48px}.skeleton-content{flex:1 1}.skeleton-line{background:#e5e7eb;border-radius:4px;height:16px;margin-bottom:8px}.skeleton-line.short{width:60%}.security-overview.error{color:#6b7280;padding:40px;text-align:center}.overview-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin-bottom:32px}.overview-card{background:var(--color-card-background);border-left:4px solid #0000;border-radius:var(--radius-xl);box-shadow:var(--shadow-base);padding:var(--space-6);transition:all var(--transition-base)}.overview-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.alerts-card{border-left-color:#dc2626}.vulnerabilities-card{border-left-color:#ea580c}.threats-card{border-left-color:#7c3aed}.feeds-card{border-left-color:#059669}.wordpress-card{border-left-color:#21759b}.database-card{border-left-color:#059669}.vulndata-card{border-left-color:#7c3aed}.retirejs-card{border-left-color:#ea580c}.osint-card{border-left-color:#dc2626}.card-header{gap:16px;margin-bottom:20px}.card-header,.card-icon{align-items:center;display:flex}.card-icon{border-radius:var(--radius-xl);color:#fff;flex-shrink:0;font-size:20px;height:48px;justify-content:center;overflow:hidden;width:48px}.card-icon i{display:block;height:20px;line-height:1;text-align:center;width:20px}.alerts-icon{background:linear-gradient(135deg,#dc2626,#ef4444)}.vulnerabilities-icon{background:linear-gradient(135deg,#ea580c,#f97316)}.threats-icon{background:linear-gradient(135deg,#7c3aed,#8b5cf6)}.feeds-icon{background:linear-gradient(135deg,#059669,#10b981)}.wordpress-icon{background:linear-gradient(135deg,#21759b,#2ea3cc)}.database-icon{background:linear-gradient(135deg,#059669,#10b981)}.vulndata-icon{background:linear-gradient(135deg,#7c3aed,#8b5cf6)}.retirejs-icon{background:linear-gradient(135deg,#ea580c,#f97316)}.osint-icon{background:linear-gradient(135deg,#dc2626,#ef4444)}.card-title h3{color:var(--color-card-title);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0 0 4px}.card-subtitle{color:var(--color-card-subtitle);margin:0}.card-content{display:flex;flex-direction:column;gap:20px}.primary-metric{text-align:center}.metric-value{display:block;line-height:var(--line-height-tight)}.metric-label{color:var(--color-text-tertiary);display:block;font-size:var(--font-size-sm);margin-top:var(--space-1)}.metric-breakdown{display:flex;flex-direction:column;gap:16px}.breakdown-section h4{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.05em;margin:0 0 var(--space-2) 0;text-transform:uppercase}.breakdown-items{display:flex;flex-direction:column;gap:8px}.breakdown-item{gap:8px;padding:6px 0}.severity-indicator,.status-indicator,.threat-indicator{border-radius:50%;flex-shrink:0;height:8px;width:8px}.item-label{color:var(--color-text-secondary);flex:1 1;text-transform:capitalize}.item-label,.item-value{font-size:var(--font-size-sm)}.item-value{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.feed-stats{gap:12px}.stat-item{background:var(--color-surface-secondary);border-radius:var(--radius-md);gap:var(--space-2);padding:var(--space-2) var(--space-3)}.stat-item i{color:var(--color-text-tertiary);flex-shrink:0;line-height:1;text-align:center;width:16px}.stat-item.error{background:var(--color-error-light)}.stat-item.error,.stat-item.error i{color:var(--color-error)}.stat-value{font-weight:var(--font-weight-semibold)}.stat-label{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.component-indicator{align-items:center;border-radius:var(--radius-sm);color:#fff;display:flex;flex-shrink:0;font-size:10px;height:16px;justify-content:center;overflow:hidden;width:16px}.component-indicator i{display:block;height:10px;line-height:1;text-align:center;width:10px}.component-indicator.plugins{background:#3b82f6}.component-indicator.themes{background:#8b5cf6}.component-indicator.core{background:#21759b}.status-indicator.active{background:#10b981}.status-indicator.vulnerable{background:#dc2626}.loading-placeholder{gap:16px}.skeleton-breakdown,.skeleton-metric{animation:pulse 2s infinite;background:#f3f4f6;border-radius:8px}.skeleton-breakdown{height:80px}.overview-actions{border-top:1px solid #e5e7eb;padding-top:24px}.action-group h4{color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-4) 0}.action-buttons{flex-wrap:wrap}.action-btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-2);padding:var(--space-3) var(--space-4);text-decoration:none;transition:all var(--transition-base)}.action-btn.primary{background:var(--color-primary-500);color:var(--color-text-inverse)}.action-btn.primary:hover{background:var(--color-primary-600)}.action-btn.secondary{background:var(--color-surface-secondary);border:1px solid var(--color-border-primary);color:var(--color-text-secondary)}.action-btn.secondary:hover{background:var(--color-surface-hover)}@media (max-width:1200px){.overview-grid{gap:20px;grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.overview-grid{gap:18px;grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.overview-grid{gap:16px;grid-template-columns:1fr}.overview-card{padding:20px}.card-header{gap:12px}.card-icon{font-size:18px;height:40px;width:40px}.card-icon i{height:18px;width:18px}.metric-value{font-size:2rem}.action-buttons{flex-direction:column}.action-btn{justify-content:center}}@media (max-width:480px){.overview-card,.security-overview{padding:16px}.card-header{flex-direction:column;gap:8px;text-align:center}.metric-value{font-size:1.75rem}}.draggable-card{cursor:grab;transition:all var(--transition-base);-webkit-user-select:none;user-select:none}.draggable-card:active{cursor:grabbing}.draggable-card.is-dragging{box-shadow:var(--shadow-xl);opacity:.9;transform:rotate(5deg);z-index:1000}.draggable-card.is-dragging .card-content{pointer-events:none}.overview-grid.is-dragging-over{background-color:#3b82f60d;border-radius:var(--radius-xl);transition:background-color var(--transition-base)}.drag-placeholder{background:#3b82f61a;border:2px dashed #3b82f64d;border-radius:var(--radius-xl);color:#3b82f699;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);min-height:200px}.drag-handle,.drag-placeholder{align-items:center;display:flex;justify-content:center}.drag-handle{color:var(--color-text-tertiary);cursor:grab;height:24px;opacity:0;position:absolute;right:12px;top:12px;transition:opacity var(--transition-base);width:24px;z-index:10}.drag-handle:hover{color:var(--color-text-secondary)}.drag-handle:active{cursor:grabbing}.overview-card:hover .drag-handle{opacity:1}.layout-controls{align-items:center;background:var(--color-surface-secondary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);display:flex;gap:12px;margin-bottom:16px;padding:12px 16px}.layout-status{align-items:center;color:var(--color-text-secondary);display:flex;font-size:var(--font-size-sm);gap:8px}.layout-status.saving{color:var(--color-warning-600)}.layout-status.saved{color:var(--color-success-600)}.layout-status i{font-size:12px}.reset-layout-btn{background:#0000;border:1px solid var(--color-border-primary);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-sm);padding:6px 12px;transition:all var(--transition-base)}.reset-layout-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}@media (max-width:768px){.drag-handle{height:20px;opacity:1;right:8px;top:8px;width:20px}.layout-controls{align-items:stretch;flex-direction:column;gap:8px}.layout-status{justify-content:center}}@media (max-width:480px){.draggable-card.is-dragging{transform:rotate(2deg)}.drag-placeholder{font-size:var(--font-size-xs);min-height:150px}}.threat-landscape{padding:24px}.section-header{padding-bottom:16px}.section-header h2 i{color:#3b82f6}.landscape-loading{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.chart-skeleton{animation:pulse 2s infinite;background:#f3f4f6;border-radius:8px;height:300px}.error-message{color:#6b7280;flex-direction:column;justify-content:center;padding:40px}.error-message i{color:#dc2626;font-size:48px;margin-bottom:16px}.error-message p{margin:0 0 20px}.landscape-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:32px}.chart-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.chart-header{margin-bottom:20px}.chart-header h3{color:#1f2937;font-size:1.125rem;font-weight:600;margin:0 0 4px}.chart-subtitle{color:#6b7280;font-size:.875rem;margin:0}.chart-wrapper{height:300px;position:relative}.simple-chart{height:100%;justify-content:center}.simple-chart,.trend-list{display:flex;flex-direction:column}.trend-list{gap:8px;max-height:280px;overflow-y:auto}.trend-item{align-items:center;background:#f9fafb;border-left:3px solid #0000;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.trend-date{color:#6b7280;font-size:.875rem;min-width:80px}.trend-severity{font-weight:600;min-width:80px;text-align:center;text-transform:capitalize}.trend-count{color:#1f2937;font-weight:600;min-width:40px;text-align:right}.threat-types-list{display:flex;flex-direction:column;gap:12px}.threat-type-item{align-items:center;display:flex;gap:12px;padding:8px 0}.threat-type-bar{background:#e5e7eb;border-radius:10px;flex:1 1;height:20px;overflow:hidden;position:relative}.threat-type-fill{border-radius:10px;height:100%;transition:width .3s ease}.threat-type-label{color:#374151;font-size:.875rem;min-width:100px;text-transform:capitalize}.threat-type-count{color:#1f2937;font-weight:600;min-width:40px;text-align:right}.threat-actors-list{display:flex;flex-direction:column;gap:12px}.threat-actor-item{align-items:center;display:flex;gap:12px;padding:8px 0}.threat-actor-bar{background:#e5e7eb;border-radius:12px;flex:1 1;height:24px;overflow:hidden;position:relative}.threat-actor-fill{border-radius:12px;height:100%;transition:width .3s ease}.threat-actor-label{color:#374151;font-size:.875rem;font-weight:500;min-width:120px}.threat-actor-count{color:#1f2937;font-weight:600;min-width:40px;text-align:right}.ioc-types-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));justify-items:center}.ioc-type-item{align-items:center;display:flex;flex-direction:column;gap:8px}.ioc-type-circle{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:60px;justify-content:center;line-height:1.2;text-align:center;width:60px}.ioc-type-label{color:#fff}.ioc-type-count{color:#1f2937;font-size:.875rem;font-weight:600}.no-data{height:100%}.no-data i{font-size:48px;margin-bottom:12px}.no-data p{font-size:.875rem}.landscape-summary{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.summary-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{border-left:4px solid #3b82f6;gap:16px}.stat-icon{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;color:#fff;font-size:20px}.wordpress-threats{border-left:4px solid #21759b}.wordpress-threats .chart-header h3{align-items:center;display:flex;gap:8px}.wordpress-threats .chart-header h3 i{color:#21759b}.wordpress-stats{display:flex;flex-direction:column;gap:20px}.wp-stat-row{display:flex;gap:16px;justify-content:space-around}.wp-stat-item{align-items:center;background:#f9fafb;border-radius:8px;display:flex;flex:1 1;flex-direction:column;padding:12px}.wp-stat-item.critical{background:#fef2f2;border:1px solid #fecaca}.wp-stat-item.high{background:#fff7ed;border:1px solid #fed7aa}.wp-stat-value{color:#1f2937;font-size:1.5rem;font-weight:700;line-height:1}.wp-stat-item.critical .wp-stat-value{color:#dc2626}.wp-stat-item.high .wp-stat-value{color:#ea580c}.wp-stat-label{color:#6b7280;font-size:.75rem;margin-top:4px;text-align:center}.wp-components{display:flex;gap:16px;justify-content:space-around}.wp-component-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px}.wp-component-icon{align-items:center;border-radius:8px;color:#fff;display:flex;font-size:16px;height:40px;justify-content:center;width:40px}.wp-component-icon.plugins{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.wp-component-icon.themes{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.wp-component-icon.core{background:linear-gradient(135deg,#21759b,#2ea3cc)}.wp-component-label{color:#6b7280;font-size:.75rem;text-align:center}.wp-component-count{color:#1f2937;font-size:1.125rem;font-weight:600}.wordpress-stat{border-left-color:#21759b}.wordpress-stat .stat-icon{background:linear-gradient(135deg,#21759b,#2ea3cc)}@media (max-width:1200px){.landscape-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media (max-width:768px){.threat-landscape{padding:16px}.section-header{align-items:stretch;flex-direction:column;gap:16px}.landscape-grid{gap:16px;grid-template-columns:1fr}.chart-container{padding:16px}.chart-wrapper{height:250px}.summary-stats{gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-card{gap:12px;padding:16px}.stat-icon{font-size:18px;height:40px;width:40px}.stat-value{font-size:1.25rem}}@media (max-width:480px){.landscape-grid{gap:12px}.chart-container{padding:12px}.chart-wrapper{height:200px}.summary-stats{grid-template-columns:1fr}.ioc-types-grid{grid-template-columns:repeat(3,1fr)}.ioc-type-circle{font-size:.625rem;height:50px;width:50px}}.security-alerts{padding:24px}.alerts-loading{display:flex;flex-direction:column;gap:16px}.alert-skeleton{align-items:center;animation:pulse 2s infinite;background:#f3f4f6;border-radius:8px;display:flex;gap:16px;padding:16px}.alerts-filters{gap:16px;margin-bottom:24px;padding:16px}.filter-group{gap:4px}.alerts-list{gap:16px;margin-bottom:24px}.no-alerts{align-items:center;display:flex;flex-direction:column;justify-content:center}.no-alerts i{font-size:64px;margin-bottom:16px;opacity:.5}.no-alerts h3{margin:0 0 8px}.alert-item{border-radius:12px;overflow:hidden}.alert-header{gap:16px;padding:20px}.alert-icon{border-radius:8px;font-size:18px}.alert-info{min-width:0}.alert-title{flex-direction:column;gap:8px;margin-bottom:12px}.alert-title h4{font-size:1.125rem}.clickable-title{cursor:pointer;transition:color .2s}.clickable-title:hover{color:#3b82f6;text-decoration:underline}.score-badge,.severity-badge,.status-badge{font-weight:600;letter-spacing:.05em}.alert-meta{gap:16px}.alert-meta span{gap:4px}.alert-meta i{color:#9ca3af;width:14px}.alert-cve,.alert-cvss,.alert-source,.alert-time{white-space:nowrap}.alert-actions{flex-direction:column}.btn-success:hover{background:#047857}.alert-description{color:#374151;line-height:1.6;padding:0 20px 16px 76px}.alert-assignment{align-items:center;background:#f9fafb;border-top:1px solid #e5e7eb;color:#6b7280;display:flex;font-size:.875rem;gap:8px;padding:12px 20px}.alert-assignment i{color:#9ca3af}.alert-assignment strong{color:#374151}.alerts-pagination{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.alerts-pagination .btn:disabled{cursor:not-allowed;opacity:.5}.alerts-pagination .btn:disabled:hover{background:#f3f4f6;border-color:#d1d5db}@media (max-width:768px){.security-alerts{padding:16px}.alerts-filters{flex-direction:column;gap:12px}.filter-group{align-items:center;flex-direction:row;justify-content:space-between}.alert-header{flex-direction:column;gap:12px;padding:16px}.alert-info{width:100%}.alert-actions{flex-direction:row;width:100%}.alert-description{padding:0 16px 16px}.alert-meta{gap:12px}.alerts-pagination{flex-direction:column;gap:12px;text-align:center}}@media (max-width:480px){.alert-title{gap:6px}.alert-title h4{font-size:1rem}.alert-badges{gap:6px}.score-badge,.severity-badge,.status-badge{font-size:.625rem;padding:3px 6px}.alert-meta{gap:8px}.alert-actions,.alert-meta{flex-direction:column}}.recent-vulnerabilities{padding:24px}.vulnerabilities-loading{display:flex;flex-direction:column;gap:16px}.vulnerability-skeleton{align-items:center;animation:pulse 2s infinite;background:#f3f4f6;border-radius:8px;display:flex;gap:16px;padding:16px}.vulnerability-skeleton .skeleton-content{display:flex;flex:1 1;flex-direction:column;gap:8px}.skeleton-line.shorter{width:40%}.vulnerabilities-filters{gap:16px;padding:16px}.vulnerabilities-list{gap:16px;margin-bottom:24px}.no-vulnerabilities{align-items:center;display:flex;flex-direction:column;justify-content:center}.no-vulnerabilities i{font-size:64px;margin-bottom:16px;opacity:.5}.no-vulnerabilities h3{margin:0 0 8px}.vulnerability-item{border-radius:12px;overflow:hidden}.vulnerability-header{gap:16px;padding:20px}.vulnerability-icon{border-radius:8px;font-size:18px}.vulnerability-info{min-width:0}.vulnerability-title{flex-direction:column;gap:8px;margin-bottom:12px}.vulnerability-title h4{font-size:1.125rem}.cvss-badge,.exploit-badge,.severity-badge{border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.cvss-badge{background:#6b7280;text-transform:none}.exploit-badge{background:#dc2626;text-transform:none}.vulnerability-meta{gap:16px}.vulnerability-meta span{gap:4px}.vulnerability-meta i{color:#9ca3af;width:14px}.vulnerability-category,.vulnerability-source,.vulnerability-time{white-space:nowrap}.vulnerability-actions{display:flex;flex-direction:column;flex-shrink:0;gap:8px}.vulnerability-description{color:#374151;line-height:1.6;padding:0 20px 16px 76px}.vulnerability-description p{margin:0}.vulnerability-details{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:12px;padding:16px 20px}.detail-item{align-items:center;font-size:.875rem;gap:8px}.detail-item strong{color:#374151;min-width:100px}.detail-item code{background:#e5e7eb;border-radius:4px;color:#1f2937;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8125rem;padding:2px 6px}.exploit-link{align-items:center;color:#dc2626;display:flex;font-weight:500;gap:4px;text-decoration:none}.exploit-link:hover{text-decoration:underline}.exploit-link i{font-size:.75rem}.vulnerabilities-summary{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.summary-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.stat-item{background:#f9fafb;padding:16px;text-align:center}@media (max-width:768px){.recent-vulnerabilities{padding:16px}.vulnerabilities-filters{flex-direction:column;gap:12px}.filter-group{align-items:center;flex-direction:row;justify-content:space-between}.vulnerability-header{flex-direction:column;gap:12px;padding:16px}.vulnerability-info{width:100%}.vulnerability-actions{flex-direction:row;width:100%}.vulnerability-description{padding:0 16px 16px}.vulnerability-details{padding:16px}.vulnerability-meta{gap:12px}.summary-stats{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.vulnerability-title{gap:6px}.vulnerability-title h4{font-size:1rem}.vulnerability-badges{gap:6px}.cvss-badge,.exploit-badge,.severity-badge{font-size:.625rem;padding:3px 6px}.vulnerability-meta{gap:8px}.detail-item,.vulnerability-actions,.vulnerability-meta{flex-direction:column}.detail-item{align-items:flex-start;gap:4px}.detail-item strong{min-width:auto}.summary-stats{grid-template-columns:1fr}.stat-item{padding:12px}.stat-value{font-size:1.25rem}}.security-news{padding:24px}.news-loading{display:flex;flex-direction:column;gap:16px}.news-skeleton{animation:pulse 2s infinite;background:#f3f4f6;border-radius:8px;display:flex;gap:16px;padding:16px}.skeleton-image{background:#e5e7eb;border-radius:6px;flex-shrink:0;height:80px;width:120px}.news-filters{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;gap:16px;padding:16px}.news-filters,.news-list{display:flex;margin-bottom:24px}.news-list{gap:20px}.news-list,.no-news{flex-direction:column}.no-news{align-items:center;color:#6b7280;display:flex;justify-content:center;padding:60px 20px;text-align:center}.no-news i{font-size:64px;margin-bottom:16px;opacity:.5}.no-news h3{color:#374151;margin:0 0 8px}.no-news p{margin:0}.news-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:20px;overflow:hidden;transition:all .2s}.news-item:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.news-item.featured{border-left:4px solid #f59e0b}.news-image{flex-shrink:0;height:150px;overflow:hidden;position:relative;width:200px}.news-image img{height:100%;object-fit:cover;width:100%}.featured-badge{align-items:center;background:#f59e0b;border-radius:4px;color:#fff;display:flex;font-size:.75rem;font-weight:600;gap:4px;left:8px;padding:4px 8px;position:absolute;top:8px}.news-content{display:flex;flex:1 1;flex-direction:column;gap:12px;padding:20px}.news-header,.news-meta{margin-bottom:8px}.news-meta{display:flex;flex-wrap:wrap;gap:8px}.category-badge,.severity-badge{align-items:center;border-radius:4px;color:#fff;display:flex;font-size:.75rem;font-weight:600;gap:4px;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.news-time{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:4px}.news-time i{color:#9ca3af}.news-title{margin-bottom:8px}.news-title h3{font-size:1.125rem;font-weight:600;line-height:1.4;margin:0}.news-link{color:#1f2937;text-decoration:none;transition:color .2s}.news-link:hover{color:#3b82f6}.news-summary{flex:1 1}.news-summary p{color:#374151;line-height:1.6;margin:0}.news-footer{border-top:1px solid #f3f4f6;gap:16px;justify-content:space-between;margin-top:auto;padding-top:12px}.news-footer,.news-source{align-items:center;display:flex}.news-source{color:#6b7280;font-size:.875rem;gap:6px}.news-source i{color:#9ca3af}.news-source strong{color:#374151}.author-separator{color:#d1d5db;margin:0 4px}.news-author,.news-stats{color:#6b7280}.news-stats{display:flex;font-size:.875rem;gap:12px}.read-time,.view-count{align-items:center;display:flex;gap:4px}.read-time i,.view-count i{color:#9ca3af}.news-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.news-tag{background:#f3f4f6;border-radius:4px;color:#6b7280;font-size:.75rem;font-weight:500;padding:2px 6px}.news-actions{align-items:center;border-left:1px solid #e5e7eb;display:flex;padding:20px}.news-summary-stats{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.summary-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.summary-item{background:#f9fafb;border-radius:8px;padding:16px;text-align:center}.summary-value{color:#1f2937;display:block;font-size:1.5rem;line-height:1}.summary-label{color:#6b7280;display:block;font-size:.875rem;margin-top:4px}@media (max-width:768px){.security-news{padding:16px}.news-filters{flex-direction:column;gap:12px}.filter-group{align-items:center;flex-direction:row;justify-content:space-between}.news-item{flex-direction:column;gap:0}.news-image{height:200px;width:100%}.news-content{padding:16px}.news-actions{border-left:none;border-top:1px solid #e5e7eb;padding:16px}.news-footer{align-items:flex-start;flex-direction:column;gap:8px}.summary-grid{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.news-item{gap:0}.news-image{height:150px}.news-actions,.news-content{padding:12px}.news-title h3{font-size:1rem}.news-meta{gap:6px}.category-badge,.severity-badge{font-size:.625rem;padding:3px 6px}.news-tags{gap:4px}.news-tag{font-size:.625rem;padding:2px 4px}.summary-grid{grid-template-columns:1fr}.summary-item{padding:12px}.summary-value{font-size:1.25rem}}.feeds-status{padding:24px}.feeds-overview{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:24px;justify-content:space-between;margin-bottom:32px;padding:24px}.overview-stats{grid-gap:20px;display:grid;flex:1 1;gap:20px;grid-template-columns:repeat(4,1fr)}.stat-card{background:#f9fafb;border-left:3px solid #e5e7eb;gap:12px;padding:16px}.stat-card .stat-icon{background:#6b7280;border-radius:8px;color:#fff;font-size:16px;height:40px;width:40px}.stat-card .stat-icon.active{background:#059669}.stat-card .stat-icon.error{background:#dc2626}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:1.25rem}.stat-label{margin-top:2px}.health-score{flex-shrink:0}.health-circle{height:120px;position:relative;width:120px}.health-progress{height:100%;position:relative;width:100%}.health-inner,.health-progress{align-items:center;border-radius:50%;display:flex;justify-content:center}.health-inner{background:#fff;box-shadow:0 2px 8px #0000001a;flex-direction:column;height:80px;width:80px}.health-value{color:#1f2937;font-size:1.5rem;font-weight:700;line-height:1}.health-label{color:#6b7280;font-size:.75rem;margin-top:2px}.feeds-list{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.feed-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:all .2s}.feed-item:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.feed-item.active{border-left:4px solid #059669}.feed-item.updating{border-left:4px solid #d97706}.feed-item.error{border-left:4px solid #dc2626}.feed-item.disabled{border-left:4px solid #6b7280;opacity:.7}.feed-header{align-items:flex-start;gap:16px;padding:20px}.feed-icon{align-items:center;background:#f3f4f6;border-radius:12px;display:flex;flex-shrink:0;font-size:20px;height:48px;justify-content:center;width:48px}.feed-info{flex:1 1;min-width:0}.feed-name{flex-direction:column;gap:8px;margin-bottom:8px}.feed-name h4{font-size:1.125rem;margin:0}.feed-badges{display:flex;flex-wrap:wrap;gap:8px}.status-badge,.type-badge{align-items:center;border-radius:4px;color:#fff;display:flex;font-size:.75rem;font-weight:600;gap:4px;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.feed-description p{color:#6b7280;font-size:.875rem;line-height:1.5;margin:0}.feed-stats{flex-shrink:0;gap:20px}.feed-stats .stat-item{background:#f9fafb;border-radius:6px;min-width:60px;padding:12px;text-align:center}.feed-stats .stat-item.new{background:#dcfce7;color:#166534}.feed-stats .stat-value{color:#1f2937;display:block;font-size:1.125rem;font-weight:700;line-height:1}.feed-stats .stat-label{color:#6b7280;display:block;font-size:.75rem;margin-top:2px}.feed-details{background:#f9fafb;border-top:1px solid #e5e7eb;padding:16px 20px}.feed-timing{display:flex;gap:24px;margin-bottom:12px}.timing-item{color:#6b7280;font-size:.875rem;gap:6px}.timing-item i{color:#9ca3af;width:14px}.timing-label{font-weight:500}.timing-value{color:#374151}.feed-errors{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;display:flex;flex-direction:column;gap:8px;padding:12px}.error-info{align-items:center;display:flex;font-size:.875rem;gap:8px}.error-info,.error-info i{color:#dc2626}.error-count{font-weight:600}.error-message code{background:#fee2e2;border-radius:4px;color:#991b1b;display:block;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8125rem;padding:4px 8px;word-break:break-all}.feeds-actions{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.action-buttons{gap:12px;justify-content:center}.no-data{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.no-data i{font-size:64px;margin-bottom:16px;opacity:.5}.no-data p{margin:0}@media (max-width:1200px){.feeds-overview{align-items:stretch;flex-direction:column}.overview-stats{grid-template-columns:repeat(2,1fr)}.health-score{align-self:center}}@media (max-width:768px){.feeds-status{padding:16px}.feeds-overview{gap:16px;padding:16px}.overview-stats{gap:12px;grid-template-columns:1fr}.stat-card{gap:10px;padding:12px}.stat-card .stat-icon{font-size:14px;height:36px;width:36px}.health-circle{height:100px;width:100px}.health-inner{height:70px;width:70px}.health-value{font-size:1.25rem}.feed-header{flex-direction:column;gap:12px;padding:16px}.feed-info{width:100%}.feed-stats{flex-direction:row;justify-content:space-around;width:100%}.feed-details{padding:12px 16px}.feed-timing{gap:8px}.action-buttons,.feed-timing{flex-direction:column}}@media (max-width:480px){.feed-icon{font-size:18px;height:40px;width:40px}.feed-name h4{font-size:1rem}.feed-badges{gap:6px}.status-badge,.type-badge{font-size:.625rem;padding:3px 6px}.feed-stats{flex-direction:column;gap:8px}.feed-stats .stat-item{min-width:auto;padding:8px}.health-circle{height:80px;width:80px}.health-inner{height:60px;width:60px}.health-value{font-size:1rem}.health-label{font-size:.625rem}}.database-monitoring{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.monitoring-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:1rem 1.5rem}.monitoring-header h3{align-items:center;font-size:1.25rem;font-weight:600;margin:0}.monitoring-controls,.monitoring-header h3{display:flex;gap:.5rem}.monitoring-tabs{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex}.tab-button.active{border-bottom-color:#667eea;color:#667eea}.monitoring-content{padding:1.5rem}.metric-header i{color:#667eea}.connection-value,.performance-value,.score-value,.size-value{color:#1e293b;font-size:2rem;font-weight:700}.health-components{display:flex;flex-direction:column;gap:.5rem}.component-status{align-items:center;background:#f8fafc;border-radius:4px;display:flex;justify-content:space-between;padding:.5rem}.component-name{color:#64748b;font-size:.875rem}.component-score{font-size:.875rem;font-weight:600}.performance-stats,.size-breakdown{display:flex;flex-direction:column;gap:.25rem}.breakdown-item,.stat-item{color:#64748b;font-size:.875rem}.connection-utilization{display:flex;flex-direction:column;gap:.5rem}.utilization-bar{background:#e2e8f0;border-radius:4px;height:8px;overflow:hidden;width:100%}.utilization-fill{height:100%;transition:width .3s ease}.utilization-text{color:#64748b;font-size:.875rem}.performance-metrics{display:flex;flex-direction:column;gap:2rem}.performance-section{background:#f8fafc;border-radius:8px;padding:1.5rem}.performance-section h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.performance-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{border-radius:6px;padding:1rem}.stat-label{color:#64748b;display:block;margin-bottom:.5rem}.stat-value{color:#1e293b;font-size:1.5rem}.connection-details{display:flex;flex-direction:column;gap:.75rem}.connection-stat{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.storage-overview{background:#f8fafc;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.storage-overview h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.total-size{align-items:center;display:flex;justify-content:space-between}.size-label{color:#64748b;font-size:1rem}.size-value{color:#1e293b;font-size:1.25rem;font-weight:700}.storage-breakdown{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.storage-section{background:#f8fafc;border-radius:8px;padding:1.5rem}.storage-section h5{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 1rem}.index-list,.table-list{display:flex;flex-direction:column;gap:.75rem}.index-item,.table-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.index-info,.table-info{display:flex;flex-direction:column;gap:.25rem}.index-name,.table-name{color:#1e293b;font-weight:600}.index-table,.table-rows{color:#64748b;font-size:.875rem}.index-size,.table-size{color:#667eea;font-weight:600}.maintenance-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.maintenance-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.recommendations-count{background:#667eea;border-radius:12px;color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.recommendations-list{display:flex;flex-direction:column;gap:1rem}.no-recommendations{color:#64748b;padding:3rem;text-align:center}.no-recommendations i{color:#10b981;font-size:3rem;margin-bottom:1rem}.recommendation-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.recommendation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.recommendation-type{align-items:center;color:#1e293b;display:flex;font-weight:600;gap:.5rem}.recommendation-type i{color:#667eea}.recommendation-priority{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.recommendation-content{display:flex;flex-direction:column;gap:.75rem}.recommendation-description{color:#475569;line-height:1.5;margin:0}.recommendation-impact{color:#64748b;font-size:.875rem;margin:0}.database-monitoring.error,.database-monitoring.loading{min-height:300px}@media (max-width:768px){.monitoring-header{align-items:stretch;gap:1rem}.monitoring-header,.monitoring-tabs{flex-direction:column}.tab-button{text-align:left}.metrics-grid,.performance-stats-grid,.storage-breakdown{grid-template-columns:1fr}.recommendation-header{align-items:flex-start;flex-direction:column;gap:.5rem}}.vuln-data-management{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.management-header{align-items:center;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;display:flex;justify-content:space-between;padding:1rem 1.5rem}.management-header h3{align-items:center;font-size:1.25rem;font-weight:600;margin:0}.management-controls,.management-header h3{display:flex;gap:.5rem}.management-tabs{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex}.tab-button.active{border-bottom-color:#dc2626;color:#dc2626}.management-content{padding:1.5rem}.metric-header i{color:#dc2626}.db-value,.import-time,.rules-value,.storage-value{color:#1e293b;font-size:2rem;font-weight:700}.rules-breakdown{display:flex;flex-direction:column;gap:.5rem}.breakdown-item{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem}.active-indicator{background:#10b981}.active-indicator,.custom-indicator{border-radius:50%;height:8px;width:8px}.custom-indicator{background:#3b82f6}.db-status,.import-status,.storage-info{color:#64748b;font-size:.875rem}.sources-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.sources-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.sources-count{background:#dc2626;border-radius:12px;color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.sources-list{display:flex;flex-direction:column;gap:1rem}.no-sources{color:#64748b;padding:3rem;text-align:center}.no-sources i{color:#dc2626;font-size:3rem;margin-bottom:1rem}.source-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.source-header{justify-content:space-between;margin-bottom:1rem}.source-header,.source-name{align-items:center;display:flex}.source-name{color:#1e293b;font-weight:600;gap:.5rem}.source-name i{color:#dc2626}.source-stats{display:flex;font-size:.875rem;gap:1rem}.total-count{color:#64748b}.active-count{color:#10b981;font-weight:500}.source-details{display:flex;flex-direction:column;gap:.75rem}.source-progress{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden;width:100%}.source-updated{color:#64748b;font-size:.875rem}.maintenance-stats{margin-bottom:2rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{background:#f8fafc;border:1px solid #e2e8f0}.stat-header{gap:.5rem;justify-content:center;margin-bottom:1rem}.stat-header i{font-size:1.25rem}.import-success .stat-header i{color:#10b981}.import-time .stat-header i{color:#3b82f6}.failed-imports .stat-header i{color:#ef4444}.disk-usage .stat-header i{color:#8b5cf6}.stat-header h5{color:#1e293b;font-size:1rem;font-weight:600;margin:0}.stat-value{margin-bottom:.5rem}.failed-count,.success-rate,.time-value,.usage-value{color:#1e293b;font-size:1.75rem;font-weight:700}.stat-details{color:#64748b;font-size:.875rem}.filtering-overview{background:#f8fafc;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.filtering-overview h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.total-filtered{align-items:center;display:flex;justify-content:space-between}.filtered-label{color:#64748b;font-size:1rem}.filtered-value{color:#1e293b;font-size:1.25rem;font-weight:700}.filtering-breakdown{background:#f8fafc;border-radius:8px;padding:1.5rem}.filtering-breakdown h5{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 1rem}.criteria-list{display:flex;flex-direction:column;gap:.75rem}.no-criteria{color:#64748b;padding:3rem;text-align:center}.no-criteria i{color:#dc2626;font-size:3rem;margin-bottom:1rem}.criteria-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.criteria-info{display:flex;flex-direction:column;gap:.25rem}.criteria-name{color:#1e293b;font-weight:600}.criteria-count{color:#dc2626;font-weight:600}.vuln-data-management.error,.vuln-data-management.loading{min-height:300px}@media (max-width:768px){.management-header{align-items:stretch;gap:1rem}.management-header,.management-tabs{flex-direction:column}.tab-button{text-align:left}.metrics-grid,.stats-grid{grid-template-columns:1fr}.source-header{align-items:flex-start;flex-direction:column;gap:.5rem}.source-stats{flex-direction:column;gap:.25rem}.total-filtered{align-items:flex-start;flex-direction:column;gap:.5rem}}.retirejs-analysis{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.analysis-header{align-items:center;background:linear-gradient(135deg,#f7df1e,#e6c200);color:#1e293b;display:flex;justify-content:space-between;padding:1rem 1.5rem}.analysis-header h3{align-items:center;font-size:1.25rem;font-weight:600;margin:0}.analysis-controls,.analysis-header h3{display:flex;gap:.5rem}.analysis-tabs{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex}.tab-button.active{border-bottom-color:#f7df1e;color:#f7df1e}.analysis-content{padding:1.5rem}.metric-header i{color:#f7df1e}.lib-value,.scan-time,.version-value,.vuln-value{color:#1e293b;font-size:2rem;font-weight:700}.lib-info,.scan-info,.version-info,.vuln-info{color:#64748b;font-size:.875rem}.severity-distribution{background:#f8fafc;border-radius:8px;padding:1.5rem}.severity-distribution h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.severity-chart{display:flex;flex-direction:column;gap:.75rem}.no-data i{color:#f7df1e}.severity-bar{background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:space-between;padding:.75rem}.severity-bar,.severity-label{align-items:center;display:flex}.severity-label{gap:.5rem}.severity-indicator{border-radius:50%;height:12px;width:12px}.severity-name{color:#1e293b;font-weight:500;text-transform:capitalize}.severity-count{color:#475569;font-weight:600}.libraries-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.libraries-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.libraries-count{background:#f7df1e;border-radius:12px;color:#1e293b;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.libraries-list{display:flex;flex-direction:column;gap:1rem}.no-libraries{color:#64748b;padding:3rem;text-align:center}.no-libraries i{color:#f7df1e;font-size:3rem;margin-bottom:1rem}.library-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.library-header{justify-content:space-between;margin-bottom:1rem}.library-header,.library-name{align-items:center;display:flex}.library-name{color:#1e293b;font-weight:600;gap:.5rem}.library-name i{color:#f7df1e}.outdated-badge{background:#ef4444;border-radius:8px;color:#fff;font-size:.75rem;font-weight:500;padding:.125rem .5rem}.library-stats{display:flex;font-size:.875rem;gap:1rem}.vuln-count{color:#ef4444;font-weight:500}.library-details{display:flex;flex-direction:column;gap:.75rem}.version-info{display:flex;font-size:.875rem;gap:1rem}.current-version{color:#64748b}.latest-version{color:#10b981;font-weight:500}.scans-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.scans-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.scans-count{background:#f7df1e;border-radius:12px;color:#1e293b;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.scans-list{display:flex;flex-direction:column;gap:1rem}.no-scans{color:#64748b;padding:3rem;text-align:center}.no-scans i{color:#f7df1e;font-size:3rem;margin-bottom:1rem}.scan-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.scan-header{justify-content:space-between;margin-bottom:1rem}.scan-header,.scan-target{align-items:center;display:flex}.scan-target{color:#1e293b;font-weight:600;gap:.5rem}.scan-target i{color:#f7df1e}.scan-status{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.scan-details{align-items:center;display:flex;justify-content:space-between}.vulnerabilities-found{color:#ef4444;font-size:.875rem;font-weight:500}.scan-date{color:#64748b;font-size:.875rem}.database-status{margin-bottom:2rem}.status-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.status-header{align-items:center;display:flex;gap:.75rem;margin-bottom:1.5rem}.status-header i{color:#f7df1e;font-size:1.5rem}.status-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.status-content{display:flex;flex-direction:column;gap:1rem}.status-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:space-between;padding:.75rem}.status-label{color:#64748b;font-weight:500}.status-value{color:#1e293b;font-weight:600}.status-badge{border-radius:12px}.database-actions{background:#f8fafc;border-radius:8px;padding:1.5rem}.database-actions h5{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 1rem}.action-buttons{gap:1rem}.retirejs-analysis.error,.retirejs-analysis.loading{min-height:300px}@media (max-width:768px){.analysis-header{align-items:stretch;gap:1rem}.analysis-header,.analysis-tabs{flex-direction:column}.tab-button{text-align:left}.metrics-grid{grid-template-columns:1fr}.library-header{align-items:flex-start;flex-direction:column;gap:.5rem}.library-stats{flex-direction:column;gap:.25rem}.scan-details,.scan-header{align-items:flex-start;flex-direction:column;gap:.5rem}.action-buttons,.version-info{flex-direction:column}.version-info{gap:.25rem}}.osint-intelligence{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.intelligence-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;justify-content:space-between;padding:1rem 1.5rem}.intelligence-header h3{align-items:center;display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0}.intelligence-controls{display:flex;gap:.5rem}.intelligence-tabs{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex}.tab-button{background:none;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;flex:1 1;font-weight:500;padding:.75rem 1rem;transition:all .2s}.tab-button:hover{background:#e2e8f0;color:#475569}.tab-button.active{background:#fff;border-bottom-color:#3b82f6;color:#3b82f6}.intelligence-content{padding:1.5rem}.metrics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:2rem}.metric-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .2s}.metric-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.metric-header{gap:.75rem;margin-bottom:1rem}.metric-header i{color:#3b82f6;font-size:1.5rem}.metric-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.metric-value{margin-bottom:1rem}.lookup-time,.lookups-value,.rate-value,.services-value{color:#1e293b;font-size:2rem;font-weight:700}.lookup-info,.lookups-info,.rate-info,.services-info{color:#64748b;font-size:.875rem}.lookup-types{background:#f8fafc;border-radius:8px;padding:1.5rem}.lookup-types h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.types-chart{display:flex;flex-direction:column;gap:.75rem}.no-data{color:#64748b;padding:3rem;text-align:center}.no-data i{color:#3b82f6;font-size:3rem;margin-bottom:1rem}.type-bar{background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:space-between;padding:.75rem}.type-bar,.type-label{align-items:center;display:flex}.type-label{gap:.5rem}.type-name{color:#1e293b;font-weight:500;text-transform:capitalize}.type-count{color:#475569;font-weight:600}.services-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.services-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.services-count{background:#3b82f6;border-radius:12px;color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.services-list{display:flex;flex-direction:column;gap:1rem}.no-services{color:#64748b;padding:3rem;text-align:center}.no-services i{color:#3b82f6;font-size:3rem;margin-bottom:1rem}.service-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.service-header{justify-content:space-between;margin-bottom:1rem}.service-header,.service-name{align-items:center;display:flex}.service-name{gap:.5rem}.service-name i{color:#3b82f6}.service-stats{display:flex;font-size:.875rem;gap:1rem}.lookup-count{color:#64748b}.success-rate{color:#10b981;font-weight:500}.service-details{display:flex;flex-direction:column;gap:.75rem}.service-progress{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden;width:100%}.progress-bar{height:100%;transition:width .3s ease}.service-last-used{color:#64748b;font-size:.875rem}.activity-header{margin-bottom:1.5rem}.activity-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.activity-count{background:#3b82f6;border-radius:12px;color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.activity-list{display:flex;flex-direction:column;gap:1rem}.no-activity{color:#64748b;padding:3rem;text-align:center}.no-activity i{color:#3b82f6;font-size:3rem;margin-bottom:1rem}.activity-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.activity-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.activity-service{align-items:center;color:#1e293b;display:flex;font-weight:600;gap:.5rem}.activity-service i{color:#3b82f6}.activity-status{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.activity-details{display:flex;flex-direction:column;gap:.75rem}.activity-query{color:#64748b;font-size:.875rem}.query-text{background:#e2e8f0;border-radius:3px;color:#1e293b;font-family:Courier New,monospace;padding:.125rem .25rem}.activity-results{align-items:center;display:flex;font-size:.875rem;justify-content:space-between}.result-count{color:#3b82f6;font-weight:500}.activity-time{color:#64748b}.keys-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.keys-header h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0}.keys-count{background:#3b82f6;border-radius:12px;color:#fff;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.keys-list{display:flex;flex-direction:column;gap:1rem}.no-keys{color:#64748b;padding:3rem;text-align:center}.no-keys i{color:#3b82f6;font-size:3rem;margin-bottom:1rem}.key-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.key-header{justify-content:space-between;margin-bottom:1rem}.key-header,.key-service{align-items:center;display:flex}.key-service{color:#1e293b;font-weight:600;gap:.5rem}.key-service i{color:#3b82f6}.key-status{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.key-details{display:flex;flex-direction:column;gap:.75rem}.key-info{align-items:center;display:flex;font-size:.875rem;justify-content:space-between}.last-validated{color:#64748b}.rate-limit{color:#f59e0b;font-weight:500}.global-overview{background:#f8fafc;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.global-overview h4{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.global-metric{align-items:center;display:flex;justify-content:space-between}.global-label{color:#64748b;font-size:1rem}.global-value{color:#1e293b;font-size:1.25rem;font-weight:700}.top-services{background:#f8fafc;border-radius:8px;padding:1.5rem}.top-services h5{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 1rem}.top-services-list{display:flex;flex-direction:column;gap:.75rem}.top-service-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:1rem;padding:.75rem}.service-rank{color:#3b82f6;font-size:1.25rem;font-weight:700;min-width:2rem}.service-info{align-items:center;display:flex;flex:1 1;justify-content:space-between}.service-name{color:#1e293b;font-weight:600}.service-usage{color:#64748b;font-size:.875rem}.osint-intelligence.error,.osint-intelligence.loading{min-height:300px}.loading-placeholder{display:flex;flex-direction:column;gap:1rem;padding:2rem}.skeleton-chart,.skeleton-metric{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;border-radius:4px}.skeleton-metric{height:60px}.skeleton-chart{height:200px}.error-message{color:#ef4444;padding:2rem;text-align:center}.error-message i{font-size:2rem;margin-bottom:1rem}.error-message p{font-size:1rem;margin:0 0 1rem}@media (max-width:768px){.intelligence-header{align-items:stretch;gap:1rem}.intelligence-header,.intelligence-tabs{flex-direction:column}.tab-button{text-align:left}.metrics-grid{grid-template-columns:1fr}.service-header{align-items:flex-start;flex-direction:column;gap:.5rem}.service-stats{flex-direction:column;gap:.25rem}.activity-header{gap:.5rem}.activity-header,.activity-results{align-items:flex-start;flex-direction:column}.activity-results{gap:.25rem}.key-header{gap:.5rem}.key-header,.key-info{align-items:flex-start;flex-direction:column}.key-info{gap:.25rem}.global-metric{gap:.5rem}.global-metric,.service-info{align-items:flex-start;flex-direction:column}.service-info{gap:.25rem}}.security-dashboard{background:var(--color-background-secondary);min-height:100vh;padding:1.5rem}.dashboard-header{align-items:flex-start;background:var(--color-card-background);border:1px solid var(--color-card-border);border-radius:.75rem;box-shadow:var(--shadow-base);display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem;transition:all .2s ease}.dashboard-header:hover{border-color:var(--color-card-hover-border);box-shadow:var(--shadow-md)}.header-content h1{align-items:center;color:var(--color-card-title);display:flex;font-size:1.875rem;font-weight:700;gap:.75rem;letter-spacing:-.025em;margin:0 0 .5rem}.header-content h1 i{color:#60a5fa;font-size:1.5rem}.dashboard-subtitle{color:var(--color-card-subtitle);font-size:1rem;font-weight:400;margin:0}.dashboard-controls{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4)}.websocket-status{align-items:center;display:flex;gap:var(--space-3)}.status-indicator{border:1px solid;transition:all var(--transition-fast)}.status-indicator.connected{border-color:#0596694d}.status-indicator.disconnected{border-color:#dc26264d}.status-indicator.connecting{border-color:#f59e0b4d}.status-indicator i{animation:pulse 2s infinite;font-size:var(--font-size-xs)}.new-alerts-badge{align-items:center;animation:alertPulse 2s infinite;background:linear-gradient(135deg,var(--color-error) 0,var(--color-error-dark) 100%);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--color-text-primary);cursor:pointer;display:flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);gap:var(--space-1);letter-spacing:.05em;padding:var(--space-2) var(--space-3);text-transform:uppercase;transition:all var(--transition-fast)}.new-alerts-badge:hover{background:linear-gradient(135deg,var(--color-error-dark) 0,#7f1d1d 100%);box-shadow:var(--shadow-base);transform:scale(1.05)}.new-alerts-badge span{font-weight:var(--font-weight-extrabold);min-width:18px;text-align:center}.time-range-selector{align-items:center;display:flex;gap:var(--space-2)}.time-range-selector label{font-weight:var(--font-weight-medium);white-space:nowrap}.form-select,.time-range-selector label{color:var(--color-text-primary);font-size:var(--font-size-sm)}.form-select{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);font-family:var(--font-family-primary);padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.form-select:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-select:hover{border-color:var(--color-border-secondary)}.alert{margin-bottom:var(--space-5)}.alert-warning{background:#f59e0b1a;border-color:#f59e0b4d}.alert-error,.alert-warning{color:var(--color-text-primary)}.alert-error{background:#dc26261a;border-color:#dc26264d}.alert-success{background:#0596691a;border-color:#0596694d}.alert-info,.alert-success{color:var(--color-text-primary)}.alert-info{background:#0891b21a;border-color:#0891b24d}.dashboard-content{display:flex;flex-direction:column;gap:var(--space-6)}.dashboard-section{background:var(--color-card-background);border:1px solid var(--color-card-border);border-radius:.75rem;box-shadow:var(--shadow-base)}.dashboard-section:hover{border-color:var(--color-card-hover-border);box-shadow:var(--shadow-md)}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.dashboard-column{display:flex;flex-direction:column;gap:var(--space-6)}.dashboard-status-bar{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:var(--color-surface);background:#1e293bf2;border-top:1px solid var(--color-border-primary);bottom:0;display:flex;font-size:var(--font-size-xs);gap:var(--space-6);left:var(--sidebar-width);padding:var(--space-3) var(--space-6);position:fixed;right:0;transition:left var(--transition-base);z-index:var(--z-sticky)}.sidebar.collapsed~.main-content .dashboard-status-bar{left:var(--sidebar-width-collapsed)}.status-item{color:var(--color-text-tertiary);font-weight:var(--font-weight-medium)}.status-item i{color:var(--color-text-muted);font-size:var(--font-size-xs)}.status-error,.status-error i{color:#fca5a5}.status-success,.status-success i{color:#6ee7b7}.status-warning,.status-warning i{color:#fcd34d}.loading-container{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);margin:var(--space-6) 0;padding:var(--space-16)}.loading-spinner{border-top:4px solid var(--color-border-primary);border:4px solid var(--color-border-primary);height:48px;margin-bottom:var(--space-4);width:48px}.loading-text{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);margin-top:var(--space-2)}.error-container{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);display:flex;flex-direction:column;justify-content:center;margin:var(--space-6) 0;padding:var(--space-16);text-align:center}.error-icon{color:#fca5a5;font-size:var(--font-size-5xl);margin-bottom:var(--space-4)}.error-container h3{color:var(--color-text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0}.error-container p{color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin:0 0 var(--space-5) 0;max-width:400px}@media (max-width:1400px){.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}@media (max-width:1200px){.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media (max-width:768px){.security-dashboard{padding:var(--space-4)}.dashboard-header{align-items:stretch;flex-direction:column;gap:var(--space-4)}.dashboard-controls{flex-wrap:wrap;gap:var(--space-3)}.dashboard-grid{gap:var(--space-4);grid-template-columns:1fr}.dashboard-status-bar{flex-wrap:wrap;font-size:var(--font-size-xs);gap:var(--space-3)}}@media (max-width:480px){.security-dashboard{padding:var(--space-3)}.header-content h1{font-size:var(--font-size-2xl)}.dashboard-controls{align-items:stretch;flex-direction:column}.time-range-selector{justify-content:space-between}.dashboard-grid{gap:var(--space-3)}}.alerts-page{margin:0 auto;max-width:1200px;padding:20px}.alerts-filters{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.alerts-list{display:flex;flex-direction:column;gap:15px}.alert-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;padding:20px;transition:all .2s}.alert-item:hover{border-color:#3b82f6;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.alert-item.new{border-left:4px solid #dc2626}.alert-item.acknowledged{border-left:4px solid #d97706}.alert-item.resolved{border-left:4px solid #059669;opacity:.8}.alert-header{align-items:flex-start;gap:15px}.alert-icon{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;font-size:1.2rem;height:40px;justify-content:center;width:40px}.alert-info{flex:1 1}.alert-title{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.alert-title h4{color:#1f2937;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0}.alert-badges{display:flex;flex-wrap:wrap;gap:8px}.score-badge,.severity-badge,.status-badge{border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;padding:4px 8px;text-transform:uppercase}.score-badge{background:#6b7280}.alert-meta{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.875rem;gap:20px}.alert-meta span{align-items:center;display:flex;gap:5px}.alert-actions{display:flex;flex-shrink:0;gap:8px}.alert-description{border-top:1px solid #f3f4f6;margin-top:15px;padding-top:15px}.alert-description p{color:#4b5563;line-height:1.5;margin:0}.no-alerts{color:#6b7280;padding:60px 20px;text-align:center}.no-alerts i{color:#d1d5db;font-size:3rem;margin-bottom:20px}.no-alerts h3{color:#374151;margin:0 0 10px}.no-alerts p{margin:0}.alerts-pagination{align-items:center;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-top:30px;padding:20px 0}.alert-detail .page-header{margin-bottom:20px}.alert-detail-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.alert-detail .alert-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:30px}.alert-detail .alert-title{margin-bottom:0}.alert-detail .alert-title h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 15px}.alert-detail .alert-actions{gap:12px}.alert-info{padding:30px}.btn-success{background:#059669;border-color:#059669}.btn-success:hover:not(:disabled){background:#047857;border-color:#047857}@media (max-width:768px){.alerts-page{padding:15px}.page-header{align-items:flex-start}.alerts-filters,.page-header{flex-direction:column;gap:15px}.filter-group{min-width:auto}.alert-header{flex-direction:column;gap:15px}.alert-title{align-items:flex-start;flex-direction:column;gap:10px}.alert-meta{flex-direction:column;gap:8px}.alerts-pagination{flex-direction:column;gap:15px;text-align:center}.detail-grid{grid-template-columns:1fr}}.vulnerabilities-page{margin:0 auto;max-width:1200px;padding:20px}.vulnerabilities-filters{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.vulnerabilities-list{display:flex;flex-direction:column;gap:15px}.vulnerability-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:20px;transition:all .2s}.vulnerability-item:hover{border-color:#3b82f6;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.vulnerability-item.critical{border-left:4px solid #dc2626}.vulnerability-item.high{border-left:4px solid #ea580c}.vulnerability-item.medium{border-left:4px solid #d97706}.vulnerability-item.low{border-left:4px solid #059669}.vulnerability-header{align-items:flex-start;gap:15px}.vulnerability-icon{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;flex-shrink:0;font-size:1.2rem;height:40px;justify-content:center;width:40px}.vulnerability-info{flex:1 1}.vulnerability-title{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.vulnerability-title h4{color:#1f2937;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0}.vulnerability-badges{display:flex;flex-wrap:wrap;gap:8px}.cve-badge,.cvss-badge,.severity-badge{border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;padding:4px 8px;text-transform:uppercase}.cve-badge{background:#6b7280;text-transform:none}.vulnerability-meta{color:#6b7280;flex-wrap:wrap;font-size:.875rem;gap:20px}.vulnerability-meta span{align-items:center;display:flex;gap:5px}.vulnerability-exploit{color:#dc2626!important;font-weight:500}.vulnerability-summary{border-top:1px solid #f3f4f6;margin-top:15px;padding-top:15px}.vulnerability-summary p{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#4b5563;display:-webkit-box;line-height:1.5;margin:0;overflow:hidden}.no-vulnerabilities{color:#6b7280;padding:60px 20px;text-align:center}.no-vulnerabilities i{color:#d1d5db;font-size:3rem;margin-bottom:20px}.no-vulnerabilities h3{color:#374151;margin:0 0 10px}.no-vulnerabilities p{margin:0}.vulnerabilities-pagination{align-items:center;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-top:30px;padding:20px 0}.vulnerability-detail .page-header{margin-bottom:20px}.vulnerability-detail-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.vulnerability-detail .vulnerability-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:30px}.vulnerability-detail .vulnerability-title{margin-bottom:0}.vulnerability-detail .vulnerability-title h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 15px}.vulnerability-info{padding:30px}.references{display:flex;flex-direction:column;gap:8px}.reference-link{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#3b82f6;display:flex;font-size:.875rem;gap:8px;padding:8px 12px;text-decoration:none;transition:all .2s}.reference-link:hover{background:#e2e8f0;border-color:#cbd5e1}.reference-link i{font-size:.75rem;opacity:.7}.exploit-info{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;display:flex;font-weight:500;gap:10px;padding:12px 16px}.exploit-info i{font-size:1.1rem}.alert-danger{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}@media (max-width:768px){.vulnerabilities-page{padding:15px}.page-header{align-items:flex-start}.page-header,.vulnerabilities-filters{flex-direction:column;gap:15px}.filter-group{min-width:auto}.vulnerability-header{flex-direction:column;gap:15px}.vulnerability-title{align-items:flex-start;flex-direction:column;gap:10px}.vulnerability-meta{flex-direction:column;gap:8px}.vulnerabilities-pagination{flex-direction:column;gap:15px;text-align:center}.detail-grid{grid-template-columns:1fr}.tags{justify-content:flex-start}.references{gap:6px}.reference-link{font-size:.8rem;padding:6px 10px}}@media (prefers-color-scheme:dark){.vulnerability-item{background:#1f2937;border-color:#374151;color:#f9fafb}.vulnerability-item:hover{border-color:#60a5fa}.vulnerability-title h4{color:#f9fafb}.vulnerability-summary p{color:#d1d5db}.tag,.vulnerability-icon{background:#374151}.tag{color:#d1d5db}.reference-link{background:#374151;border-color:#4b5563;color:#60a5fa}.reference-link:hover{background:#4b5563;border-color:#6b7280}}.threat-intel-page{margin:0 auto;max-width:1200px;padding:20px}.page-header{margin-bottom:30px;padding-bottom:20px}.header-actions{gap:10px}.threat-filters{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.filter-group{flex-direction:column;gap:5px;min-width:150px}.filter-group.search-group{flex:1 1;min-width:200px}.filter-group label{color:#374151;font-size:.875rem}.form-input,.form-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:8px 12px;transition:border-color .2s}.form-input:focus,.form-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.threats-list{display:flex;flex-direction:column;gap:15px}.threat-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;padding:20px;transition:all .2s}.threat-item:hover{border-color:#3b82f6;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.threat-item.critical{border-left:4px solid #dc2626}.threat-item.high{border-left:4px solid #ea580c}.threat-item.medium{border-left:4px solid #d97706}.threat-item.low{border-left:4px solid #059669}.threat-header{align-items:flex-start;display:flex;gap:15px}.threat-icon{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;flex-shrink:0;font-size:1.2rem;height:40px;justify-content:center;width:40px}.threat-info{flex:1 1}.threat-title{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.threat-title h4{color:#1f2937;font-family:Courier New,monospace;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0}.threat-badges{display:flex;flex-wrap:wrap;gap:8px}.confidence-badge,.severity-badge,.threat-type-badge{border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;padding:4px 8px;text-transform:uppercase}.confidence-badge{background:#6b7280}.threat-meta{color:#6b7280;display:flex;flex-wrap:wrap;font-size:.875rem;gap:20px}.threat-meta span{align-items:center;display:flex;gap:5px}.threat-actor{color:#dc2626!important;font-weight:500}.threat-description{border-top:1px solid #f3f4f6;margin-top:15px;padding-top:15px}.threat-description p{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#4b5563;display:-webkit-box;line-height:1.5;margin:0;overflow:hidden}.no-threats{color:#6b7280;padding:60px 20px;text-align:center}.no-threats i{color:#d1d5db;font-size:3rem;margin-bottom:20px}.no-threats h3{color:#374151;margin:0 0 10px}.no-threats p{margin:0}.threats-pagination{align-items:center;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-top:30px;padding:20px 0}.pagination-info{font-size:.875rem}.threat-detail .page-header{margin-bottom:20px}.threat-detail-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.threat-detail .threat-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:30px}.threat-detail .threat-title{margin-bottom:0}.threat-detail .threat-title h2{color:#1f2937;font-family:Courier New,monospace;font-size:1.5rem;font-weight:600;margin:0 0 15px;word-break:break-all}.threat-info{padding:30px}.info-section{margin-bottom:30px}.info-section:last-child{margin-bottom:0}.info-section h3{color:#1f2937;font-size:1.1rem;font-weight:600;margin:0 0 15px}.info-section p{color:#4b5563;line-height:1.6;margin:0}.detail-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.detail-item{display:flex;flex-direction:column;gap:5px}.detail-item label{color:#6b7280;font-size:.875rem;font-weight:500}.detail-item span{align-items:center;color:#1f2937;display:flex;font-weight:500;gap:8px}.ioc-value{background:#f3f4f6;border-radius:4px;font-family:Courier New,monospace;padding:4px 8px;word-break:break-all}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{background:#f3f4f6;border-radius:4px;color:#374151;font-size:.75rem;font-weight:500;padding:4px 8px}.btn{background:#0000}.btn-sm{font-size:.8rem}.loading-spinner{border:2px solid #f3f4f6}.alert{border-radius:6px;gap:10px;margin-bottom:20px;padding:12px 16px}.alert-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}@media (max-width:768px){.threat-intel-page{padding:15px}.page-header{align-items:flex-start}.page-header,.threat-filters{flex-direction:column;gap:15px}.filter-group{min-width:auto}.threat-header{flex-direction:column;gap:15px}.threat-title{align-items:flex-start;flex-direction:column;gap:10px}.threat-meta{flex-direction:column;gap:8px}.threats-pagination{flex-direction:column;gap:15px;text-align:center}.detail-grid{grid-template-columns:1fr}.tags{justify-content:flex-start}.threat-detail .threat-title h2{font-size:1.2rem}.ioc-value{font-size:.8rem}}@media (prefers-color-scheme:dark){.threat-item{background:#1f2937;border-color:#374151;color:#f9fafb}.threat-item:hover{border-color:#60a5fa}.threat-title h4{color:#f9fafb}.threat-description p{color:#d1d5db}.tag,.threat-icon{background:#374151}.tag{color:#d1d5db}.ioc-value{background:#374151;color:#f9fafb}}.feeds-page{margin:0 auto;max-width:1400px;padding:24px}.page-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;margin-bottom:32px;padding-bottom:16px}.page-header h1{color:#1f2937;font-size:2rem;font-weight:700}.btn.btn-primary{background:#3b82f6;color:#fff}.btn.btn-primary:hover:not(:disabled){background:#2563eb}.btn.btn-outline{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.btn.btn-outline:hover:not(:disabled){background:#e5e7eb}.btn.btn-sm{font-size:.75rem;padding:6px 12px}.btn.btn-success{background:#059669;color:#fff}.btn.btn-success:hover:not(:disabled){background:#047857}.btn.btn-warning{background:#d97706;color:#fff}.btn.btn-warning:hover:not(:disabled){background:#b45309}.alert{gap:12px;margin-bottom:24px;padding:16px}.alert.alert-danger{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.alert.alert-info{background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb}.loading-spinner{border:2px solid #e5e7eb;height:24px;width:24px}.feeds-overview-section{margin-bottom:32px}.feeds-management{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:24px}.section-header{margin-bottom:24px}.section-header h2{color:#1f2937;gap:12px;margin:0 0 8px}.section-header p{color:#6b7280;font-size:.875rem;margin:0}.feeds-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.table-header{background:#f9fafb;color:#374151;font-size:.875rem}.table-header,.table-row{grid-gap:16px;border-bottom:1px solid #e5e7eb;display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr;padding:16px}.table-row{transition:background-color .2s}.table-row:hover{background:#f9fafb}.table-row.error{background:#fef2f2}.cell{align-items:center;display:flex;font-size:.875rem}.feed-info{align-items:flex-start;flex-direction:column}.feed-name{align-items:center;display:flex;gap:12px;width:100%}.feed-name i{color:#6b7280;flex-shrink:0;font-size:1.25rem}.feed-name h4{color:#1f2937;font-size:.875rem;font-weight:600;margin:0 0 4px}.feed-description{color:#6b7280;font-size:.75rem;margin-top:4px}.type-badge{border-radius:4px;color:#fff;display:inline-block;font-size:.75rem;font-weight:500;padding:4px 8px;text-transform:capitalize}.status-badge{color:#fff;gap:4px}.error-message{font-size:.75rem;gap:4px;margin-top:4px}.update-time{align-items:center;color:#6b7280;display:flex;gap:6px}.update-time i{font-size:.75rem}.entry-count{color:#1f2937;font-weight:600}@media (max-width:1200px){.table-header,.table-row{grid-template-columns:2fr 1fr 1fr 1fr 1.5fr}.cell:nth-child(4){display:none}}@media (max-width:768px){.feeds-page{padding:16px}.page-header{align-items:flex-start;flex-direction:column;gap:16px}.header-actions{justify-content:flex-start;width:100%}.feeds-management{padding:16px}.feeds-table{overflow-x:auto}.table-header,.table-row{grid-template-columns:2fr 1fr 1fr 1fr;min-width:600px}.cell:nth-child(3),.cell:nth-child(4){display:none}}@media (max-width:480px){.table-header,.table-row{gap:8px;grid-template-columns:1fr}.cell{border-bottom:1px solid #f3f4f6;padding:8px 0}.cell:last-child{border-bottom:none}.cell:nth-child(3),.cell:nth-child(4),.cell:nth-child(5){display:flex}.feed-actions{justify-content:flex-end}}.wordpress-vulnerabilities{background-color:#f8fafc;min-height:100vh;padding:24px}.vulnerabilities-header{align-items:flex-start;display:flex;gap:24px;justify-content:space-between;margin-bottom:32px}.vulnerabilities-header h1{color:#1f2937;font-size:28px;font-weight:600;margin:0}.stats-summary{display:flex;flex-wrap:wrap;gap:16px}.stat-item{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;min-width:80px;padding:12px 16px}.stat-value{color:#374151;font-size:24px}.stat-item.critical .stat-value{color:#dc2626}.stat-item.high .stat-value{color:#ea580c}.stat-item.medium .stat-value{color:#d97706}.stat-item.low .stat-value{color:#65a30d}.vulnerabilities-filters{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;padding:24px}.search-form{display:flex;gap:12px;margin-bottom:20px}.search-input{border:1px solid #d1d5db;border-radius:8px;flex:1 1;font-size:14px;padding:12px 16px;transition:border-color .2s}.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.search-button{background:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:12px 16px;transition:background-color .2s}.search-button:hover{background:#2563eb}.filter-controls{display:flex;flex-wrap:wrap;gap:12px}.filter-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:14px;min-width:140px;padding:8px 12px}.filter-select:focus{border-color:#3b82f6}.vulnerabilities-table{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;overflow:hidden}.vulnerabilities-table table{border-collapse:collapse;width:100%}.vulnerabilities-table th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-size:14px;font-weight:600;padding:16px;text-align:left}.vulnerabilities-table th.sortable{cursor:pointer;transition:background-color .2s;-webkit-user-select:none;user-select:none}.vulnerabilities-table th.sortable:hover{background:#f3f4f6}.vulnerabilities-table td{border-bottom:1px solid #f3f4f6;padding:16px;vertical-align:top}.vulnerabilities-table tr:hover{background:#f9fafb}.vuln-title{max-width:300px}.title-content{display:flex;flex-direction:column;gap:4px}.title-text{color:#1f2937;font-weight:500;line-height:1.4}.vuln-id{color:#6b7280;font-family:Monaco,Menlo,monospace;font-size:12px}.severity-badge{color:#fff;display:inline-block;font-size:11px;letter-spacing:.5px;padding:4px 8px}.vuln-type{color:#374151;font-weight:500;text-transform:capitalize}.component{max-width:200px}.component-info{align-items:center;color:#374151;display:flex;gap:8px}.component-info i{color:#6b7280;width:16px}.published-date{color:#6b7280;font-size:14px}.status-cell{text-align:center}.status-indicators{display:flex;gap:4px;justify-content:center}.status-indicator{border-radius:50%;color:#fff;display:inline-block;font-size:10px;font-weight:600;height:20px;line-height:20px;text-align:center;width:20px}.status-indicator.patch{background:#10b981}.status-indicator.exploit{background:#f59e0b}.status-indicator.wild{background:#dc2626}.actions-cell{text-align:center}.action-button{background:#f3f4f6;border:none;border-radius:6px;color:#6b7280;cursor:pointer;padding:8px;transition:all .2s}.action-button:hover{background:#e5e7eb;color:#374151}.action-button.view:hover{background:#dbeafe;color:#3b82f6}.pagination{gap:16px;padding:24px}.pagination-button{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;padding:8px 12px;transition:all .2s}.pagination-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.pagination-button:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#6b7280;font-size:14px}.modal-content{max-width:800px}.modal-header{align-items:flex-start;gap:16px}.modal-header h2{font-size:20px;line-height:1.4}.modal-close{flex-shrink:0}.vuln-details{display:flex;flex-direction:column;gap:16px}.detail-row{align-items:flex-start;border-bottom:1px solid #f3f4f6;display:flex;gap:12px;padding:12px 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#374151;flex-shrink:0;font-weight:600;min-width:140px}.detail-value{color:#6b7280;flex:1 1}.detail-section{border-bottom:1px solid #f3f4f6;display:flex;flex-direction:column;gap:8px;padding:16px 0}.detail-section:last-child{border-bottom:none}.detail-description{color:#374151;line-height:1.6;margin:0}.status-badges{display:flex;flex-wrap:wrap;gap:8px}.status-badge{font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 8px}.status-badge.patch{background:#d1fae5;color:#065f46}.status-badge.exploit{background:#fef3c7;color:#92400e}.status-badge.wild{background:#fee2e2;color:#991b1b}.cve-list{display:flex;flex-wrap:wrap;gap:8px}.cve-badge{background:#f3f4f6;border-radius:4px;color:#374151;font-family:Monaco,Menlo,monospace;font-size:12px;padding:4px 8px}.reference-list{margin:0;padding-left:20px}.reference-list li{margin-bottom:4px}.reference-list a{color:#3b82f6;text-decoration:none;word-break:break-all}.reference-list a:hover{text-decoration:underline}@media (max-width:1024px){.vulnerabilities-header{align-items:stretch;flex-direction:column}.stats-summary{justify-content:center}.filter-controls{flex-direction:column}.filter-select{min-width:auto}}@media (max-width:768px){.vulnerabilities-filters,.wordpress-vulnerabilities{padding:16px}.search-form{flex-direction:column}.vulnerabilities-table{overflow-x:auto}.vulnerabilities-table table{min-width:800px}.modal-content{margin:10px;max-height:calc(100vh - 20px)}.modal-body,.modal-header{padding:16px}.detail-row{flex-direction:column;gap:4px}.detail-label{min-width:auto}}@media print{.wordpress-vulnerabilities{background:#fff;padding:0}.action-button,.pagination,.vulnerabilities-filters{display:none}.vulnerabilities-table{border:1px solid #000;box-shadow:none}.vulnerabilities-table td,.vulnerabilities-table th{border:1px solid #000;padding:8px}}@media (prefers-contrast:high){.vulnerabilities-table th{background:#000;color:#fff}.severity-badge{border:2px solid}}.feed-manager{background-color:#f8fafc;min-height:100vh;padding:24px}.feed-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.feed-header h1{color:#1f2937;font-size:28px;font-weight:600;margin:0}.header-actions{gap:12px}.btn{border-radius:8px;padding:10px 16px}.btn-sm{font-size:12px;padding:6px 12px}.loading-container{color:#6b7280;padding:64px}.loading-spinner{border:4px solid #e5e7eb;border-top-color:#3b82f6;height:40px;margin-bottom:16px;width:40px}.error-message{gap:8px;margin-bottom:24px;padding:16px;position:relative}.error-close{background:none;border:none;color:#dc2626;cursor:pointer;font-size:18px;padding:4px;position:absolute;right:12px;top:8px}.feed-statistics{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:32px}.stat-card{border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px;text-align:center}.stat-value{color:#1f2937;font-size:28px}.stat-label{font-size:12px;letter-spacing:.5px;margin-top:4px}.feed-content{grid-gap:32px;display:grid;gap:32px;grid-template-columns:2fr 1fr}.feeds-section h2,.updates-section h2{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 20px}.feeds-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.feed-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px;transition:all .2s}.feed-card:hover{box-shadow:0 4px 12px #00000026}.feed-card.inactive{background:#f9fafb;opacity:.6}.feed-header-card{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.feed-info h3{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 4px}.feed-type{background:#e5e7eb;border-radius:4px;color:#374151;font-size:11px;font-weight:600;letter-spacing:.5px;padding:2px 6px}.toggle-slider{background-color:#ccc;transition:.2s}.toggle-slider:before{transition:.2s}input:checked+.toggle-slider{background-color:#3b82f6}input:checked+.toggle-slider:before{transform:translateX(20px)}.feed-stats{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.feed-stat{align-items:center;display:flex;font-size:14px;justify-content:space-between}.feed-stat .stat-label{color:#6b7280;font-size:14px;letter-spacing:normal;text-transform:none}.feed-stat .stat-value{color:#374151;font-size:14px;font-weight:500}.feed-actions{border-top:1px solid #f3f4f6;display:flex;gap:8px;padding-top:16px}.updates-list{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.no-updates{align-items:center;color:#6b7280;display:flex;flex-direction:column;gap:8px;padding:40px;text-align:center}.update-item{border-bottom:1px solid #f3f4f6;padding:16px}.update-item:last-child{border-bottom:none}.update-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.update-feed{color:#1f2937;font-weight:600}.update-status{font-size:11px;font-weight:600;letter-spacing:.5px}.update-details{color:#6b7280;font-size:12px}.update-stats,.update-time{margin-bottom:4px}.update-error{color:#dc2626;font-weight:500}.modal-overlay{padding:20px}.modal-content{box-shadow:0 25px 50px -12px #00000040}.modal-header{padding:24px}.modal-header h2{font-size:18px}.modal-close{color:#6b7280;font-size:24px;line-height:1;padding:4px}.modal-body{max-height:calc(90vh - 120px);padding:24px}.feed-form{display:flex;flex-direction:column;gap:20px}.form-group{gap:6px}.form-label{align-items:center;display:flex;gap:8px}.form-label input[type=checkbox]{margin:0}.form-input{padding:10px 12px}.form-actions{border-top:1px solid #e5e7eb;gap:12px;padding-top:20px}@media (max-width:1024px){.feed-content{gap:24px;grid-template-columns:1fr}.feeds-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.feed-statistics{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}@media (max-width:768px){.feed-manager{padding:16px}.feed-header{align-items:stretch;flex-direction:column;gap:16px}.feeds-grid{grid-template-columns:1fr}.feed-statistics{grid-template-columns:repeat(2,1fr)}.modal-content{margin:10px;max-height:calc(100vh - 20px)}.modal-body,.modal-header{padding:16px}.feed-actions{flex-direction:column}.form-actions{flex-direction:column-reverse}}@media (max-width:480px){.feed-statistics{grid-template-columns:1fr}.feed-stat{gap:2px}.feed-stat,.update-header{align-items:flex-start;flex-direction:column}.update-header{gap:4px}}@media print{.feed-manager{background:#fff;padding:0}.feed-actions,.header-actions,.toggle-switch{display:none}.feed-card{border:1px solid #000;box-shadow:none;break-inside:avoid;margin-bottom:16px;page-break-inside:avoid}.feed-content{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.loading-spinner{animation:none}*{transition:none!important}}@media (prefers-contrast:high){.feed-card,.toggle-slider{border:2px solid #000}.btn{border:2px solid}}.wordpress-dashboard{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.wordpress-dashboard h1,.wordpress-dashboard h2,.wordpress-dashboard h3,.wordpress-dashboard h4{font-weight:600;line-height:1.2}.wordpress-dashboard button{transition:all .2s ease}.wordpress-dashboard button:hover:not(:disabled){box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.wordpress-dashboard button:active:not(:disabled){transform:translateY(0)}.wordpress-dashboard>div>div[style*="backgroundColor: 'white'"]{transition:all .2s ease}.wordpress-dashboard>div>div[style*="backgroundColor: 'white'"]:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-1px)}.wordpress-dashboard div[style*="border: '1px solid #f3f4f6'"],.wordpress-dashboard div[style*="border: '1px solid #fee2e2'"]{transition:all .2s ease}.wordpress-dashboard div[style*="border: '1px solid #f3f4f6'"]:hover,.wordpress-dashboard div[style*="border: '1px solid #fee2e2'"]:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.wordpress-dashboard div[style*="backgroundColor: '#e5e7eb'"]>div{transition:width .3s ease}@media (max-width:768px){.wordpress-dashboard{padding:1rem!important}.wordpress-dashboard h1{font-size:1.5rem!important}.wordpress-dashboard>div:first-child{flex-direction:column!important;gap:1rem!important}.wordpress-dashboard>div:first-child>div:last-child{align-items:stretch!important;flex-direction:column!important}.wordpress-dashboard div[style*=gridTemplateColumns]{grid-template-columns:1fr!important}}@media (max-width:480px){.wordpress-dashboard div[style*="display: 'flex'"]{align-items:stretch!important;flex-direction:column!important;gap:.5rem!important}.wordpress-dashboard div[style*="justifyContent: 'space-between'"]{justify-content:flex-start!important}}.wordpress-dashboard .loading-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.wordpress-dashboard div[style*="position: 'fixed'"][style*="top: '1rem'"]{animation:slideInRight .3s ease-out}.severity-critical{background-color:#dc26261a}.severity-high{background-color:#ea580c1a;color:#ea580c}.severity-medium{background-color:#d977061a;color:#d97706}.severity-low{background-color:#16a34a1a;color:#16a34a}.type-plugin{background-color:#3b82f61a;color:#3b82f6}.type-theme{background-color:#8b5cf61a;color:#8b5cf6}.type-core{background-color:#06b6d41a;color:#06b6d4}.status-active{background-color:#16a34a1a;color:#16a34a}.status-inactive{background-color:#dc26261a;color:#dc2626}.wordpress-dashboard button:focus{outline:2px solid #3b82f6;outline-offset:2px}.wordpress-dashboard :focus{outline:none}.wordpress-dashboard a:focus,.wordpress-dashboard button:focus{outline:2px solid #3b82f6;outline-offset:2px}@media print{.wordpress-dashboard button,.wordpress-dashboard div[style*="position: 'fixed'"]{display:none!important}.wordpress-dashboard{background:#fff!important;color:#000!important}.wordpress-dashboard *{border-color:#ccc!important;box-shadow:none!important}}@media (prefers-color-scheme:dark){.wordpress-dashboard.dark-mode{background-color:#1f2937;color:#f9fafb}.wordpress-dashboard.dark-mode div[style*="backgroundColor: 'white'"]{background-color:#374151!important;border-color:#4b5563!important}}@media (prefers-contrast:high){.wordpress-dashboard,.wordpress-dashboard button{border:2px solid}}@media (prefers-reduced-motion:reduce){.wordpress-dashboard *,.wordpress-dashboard :after,.wordpress-dashboard :before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.discovery-container{background:var(--color-bg-primary);min-height:100vh;padding:1.5rem}.discovery-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.header-left{gap:1rem}.header-left h1{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin:0}.header-left h1 i{color:var(--color-primary);margin-right:.5rem}.btn-back{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;padding:.5rem 1rem;transition:all .2s}.btn-back:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.btn-quick-scan{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-quick-scan:hover{box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-1px)}.btn-create{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-create:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.notification{align-items:center;animation:slideIn .3s ease;border-radius:6px;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.notification-success{background:#10b9811a;border:1px solid #10b9814d;color:#10b981}.notification-error{background:#ef44441a;border:1px solid #ef44444d;color:#ef4444}.notification-warning{background:#f59e0b1a;border:1px solid #f59e0b4d;color:#f59e0b}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.discovery-content{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:350px 1fr;height:calc(100vh - 180px)}.scans-panel{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.scans-panel h2{background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:1rem;font-weight:600;margin:0;padding:1rem}.scans-panel h2 i{color:var(--color-primary);margin-right:.5rem}.scans-list{flex:1 1;overflow-y:auto;padding:.75rem}.scan-card{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;margin-bottom:.5rem;padding:.75rem;transition:all .2s}.scan-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #0000001a}.scan-card.selected{background:#3b82f60d;border-color:var(--color-primary)}.scan-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.scan-name{color:var(--color-text-primary);font-size:.9rem;font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{font-size:.7rem;padding:.2rem .5rem}.status-pending{background:#6b728033;color:#6b7280}.status-running{background:#3b82f633;color:#3b82f6}.status-completed{background:#10b98133;color:#10b981}.status-failed{background:#ef444433;color:#ef4444}.status-cancelled{background:#f59e0b33;color:#f59e0b}.scan-card-info{color:var(--color-text-secondary);display:flex;font-size:.75rem;gap:.75rem;margin-bottom:.5rem}.scan-card-info i{margin-right:.25rem}.agent-tag{background:#8b5cf633;border-radius:4px;color:#8b5cf6;padding:.1rem .4rem}.progress-bar{background:var(--color-bg-tertiary);border-radius:2px;height:4px;margin-bottom:.5rem;overflow:hidden}.progress-fill{background:linear-gradient(90deg,var(--color-primary) 0,#06b6d4 100%);border-radius:2px;height:100%;transition:width .3s ease}.scan-card-footer{align-items:center;display:flex;justify-content:space-between}.scan-time{color:var(--color-text-tertiary);font-size:.7rem}.scan-actions{display:flex;gap:.25rem}.btn-icon{border:none;border-radius:4px;cursor:pointer;height:28px;transition:all .2s;width:28px}.btn-start{background:#10b98133;color:#10b981}.btn-start:hover{background:#10b9814d}.btn-stop{background:#f59e0b33;color:#f59e0b}.btn-stop:hover{background:#f59e0b4d}.btn-delete{background:#ef444433;color:#ef4444}.btn-delete:hover{background:#ef44444d}.btn-icon:disabled{cursor:not-allowed;opacity:.5}.empty-state{align-items:center;color:var(--color-text-secondary);display:flex;flex-direction:column;justify-content:center;padding:2rem}.empty-state i{opacity:.5}.empty-state button{background:var(--color-primary);border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:1rem;padding:.5rem 1rem}.hosts-panel{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.hosts-header{align-items:center;background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:1rem}.hosts-header h2{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin:0}.hosts-header h2 i{color:var(--color-primary);margin-right:.5rem}.hosts-stats{display:flex;gap:1rem}.hosts-stats .stat{background:var(--color-bg-primary);border-radius:4px;color:var(--color-text-secondary);font-size:.8rem;padding:.25rem .5rem}.hosts-stats .stat.alive{color:#10b981}.hosts-stats .stat.suspicious{color:#f59e0b}.hosts-stats .stat.selected{color:var(--color-primary)}.hosts-toolbar{align-items:center;border-bottom:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:1rem;padding:.75rem 1rem}.search-box{min-width:200px}.search-box i{color:var(--color-text-tertiary);left:.75rem}.search-box input{background:var(--color-bg-primary);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:.875rem;padding:.5rem .75rem .5rem 2.25rem}.search-box input:focus{border-color:var(--color-primary)}.toolbar-filters{align-items:center;display:flex;gap:.75rem}.filter-checkbox{align-items:center;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:.8rem;gap:.4rem}.toolbar-filters select{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:.8rem;padding:.4rem .75rem}.toolbar-actions{display:flex;gap:.5rem}.toolbar-actions button{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;font-size:.8rem;padding:.4rem .75rem;transition:all .2s}.toolbar-actions button:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.toolbar-actions .btn-import{background:linear-gradient(135deg,#10b981,#059669);border-color:#0000;color:#fff}.toolbar-actions .btn-import:hover{box-shadow:0 2px 8px #10b9814d}.toolbar-actions button:disabled{cursor:not-allowed;opacity:.5}.hosts-table-container{flex:1 1;overflow:auto}.hosts-table{border-collapse:collapse;font-size:.85rem;width:100%}.hosts-table th{background:var(--color-bg-tertiary);color:var(--color-text-secondary);font-weight:500;position:-webkit-sticky;position:sticky;text-align:left;top:0;white-space:nowrap}.hosts-table td,.hosts-table th{border-bottom:1px solid var(--color-border);padding:.75rem}.hosts-table td{color:var(--color-text-primary)}.hosts-table tr:hover{background:var(--color-bg-tertiary)}.hosts-table tr.suspicious{background:#f59e0b0d}.hosts-table tr.suspicious:hover{background:#f59e0b1a}.hosts-table tr.dead{opacity:.6}.col-select{text-align:center;width:40px}.col-ip{align-items:center;display:flex;font-family:monospace;gap:.5rem}.imported-badge{color:#10b981;font-size:.8rem}.vendor{color:var(--color-text-tertiary);display:block;font-size:.7rem}.mac-warning{color:#f59e0b;font-size:.75rem;margin-left:.25rem}.ports-count{background:#3b82f633;border-radius:4px;color:var(--color-primary);font-size:.75rem;padding:.15rem .4rem}.status-alive{color:#10b981}.status-suspicious{color:#f59e0b}.status-dead{color:var(--color-text-tertiary)}.discovery-loading,.hosts-empty,.hosts-empty-state,.hosts-loading{align-items:center;color:var(--color-text-secondary);display:flex;flex-direction:column;justify-content:center;padding:3rem}.discovery-loading i,.hosts-loading i{color:var(--color-primary);font-size:2rem;margin-bottom:1rem}.hosts-empty i,.hosts-empty-state i{font-size:3rem;margin-bottom:1rem;opacity:.3}.modal{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:90%}.quick-scan-modal{max-width:450px}.create-scan-modal{max-width:700px}.modal-header{background:var(--color-bg-tertiary);border-bottom:1px solid var(--color-border);padding:1rem 1.5rem}.modal-header h2{color:var(--color-text-primary);font-size:1.1rem}.modal-header h2 i{color:var(--color-primary);margin-right:.5rem}.btn-close{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:1.1rem;padding:.25rem}.btn-close:hover{color:var(--color-text-primary)}.modal-body{padding:1.5rem}.modal-footer{background:var(--color-bg-tertiary);border-top:1px solid var(--color-border);gap:.75rem;padding:1rem 1.5rem}.form-group label{color:var(--color-text-secondary);display:block;font-size:.85rem;margin-bottom:.4rem}.form-group input,.form-group select,.form-group textarea{background:#fff;background:var(--color-bg-primary,#fff);border:1px solid #e5e7eb;border:1px solid var(--color-border,#e5e7eb);border-radius:6px;color:#1f2937;color:var(--color-text-primary,#1f2937);font-size:.9rem;padding:.6rem .75rem;transition:border-color .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary)}.form-group textarea{font-family:monospace;resize:vertical}.form-row.checkboxes{display:flex;flex-wrap:wrap;gap:1rem}.form-section{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1rem}.form-section h3{color:var(--color-text-primary);font-size:.9rem;font-weight:600;margin:0 0 1rem}.checkbox-group{display:flex;flex-wrap:wrap;gap:.75rem}.checkbox-label{align-items:center;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:.85rem;gap:.4rem}.checkbox-label input[type=checkbox]{margin:0;width:auto}.btn-cancel{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;padding:.6rem 1.25rem;transition:all .2s}.btn-cancel:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:.6rem 1.25rem;transition:all .2s}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #3b82f64d}@media (max-width:1024px){.discovery-content{grid-template-columns:1fr;height:auto}.scans-panel{max-height:300px}.hosts-panel{min-height:500px}}@media (max-width:640px){.discovery-header{align-items:flex-start;flex-direction:column;gap:1rem}.hosts-toolbar{align-items:stretch;flex-direction:column}.toolbar-actions{flex-wrap:wrap}.form-row{grid-template-columns:1fr}}.schedule-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:1rem;padding:1.25rem;transition:all .2s}.schedule-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.schedule-card.disabled{border-color:var(--border-color);opacity:.7}.schedule-card.active{border-left:4px solid #22c55e}.schedule-card.imminent{border-left:4px solid #f59e0b}.schedule-card.disabled{border-left:4px solid #6b7280}.schedule-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.schedule-info{flex:1 1;min-width:0}.schedule-name{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-project{background:var(--bg-tertiary);border-radius:4px;color:var(--text-secondary);display:inline-block;font-size:.75rem;margin-top:.25rem;padding:.125rem .5rem}.schedule-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.875rem;line-height:1.4;margin:0;overflow:hidden}.schedule-timing{display:flex;flex-direction:column;gap:.5rem}.timing-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.8rem;gap:.5rem}.timing-icon{font-size:.75rem}.timing-item.next-run{color:#22c55e;font-weight:500}.timing-item.last-run{color:var(--text-tertiary)}.schedule-stats{grid-gap:.5rem;background:var(--bg-tertiary);border-radius:8px;display:grid;gap:.5rem;grid-template-columns:repeat(4,1fr);padding:.75rem}.schedule-stats .stat{align-items:center;display:flex;flex-direction:column;text-align:center}.schedule-stats .stat-value{color:var(--text-primary);font-size:1rem;font-weight:700}.schedule-stats .stat-label{color:var(--text-secondary);font-size:.65rem;text-transform:uppercase}.schedule-stats .stat.success .stat-value{color:#22c55e}.schedule-stats .stat.failure .stat-value{color:#ef4444}.schedule-stats .stat.rate .stat-value{color:#3b82f6}.schedule-actions{border-top:1px solid var(--border-color);display:flex;gap:.5rem;padding-top:.5rem}.schedule-actions .btn-sm{flex:1 1;font-size:.75rem;padding:.375rem .75rem}.schedule-actions .btn-sm:first-child{flex:2 1}.schedule-actions .btn:disabled{cursor:not-allowed;opacity:.5}.toggle-switch{display:inline-block;height:24px;position:relative;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#4b5563;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:#22c55e}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 2px #22c55e4d}.schedule-expand{align-items:center;border-top:1px dashed var(--border-color);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.75rem;gap:.5rem;padding:.5rem 0;transition:color .2s}.schedule-expand:hover{color:var(--primary-color)}.expand-icon{font-size:.625rem;transition:transform .2s}.schedule-execution-history{background:var(--bg-tertiary);border-radius:8px;margin-top:.5rem;padding:.75rem}.executions-empty,.executions-loading{color:var(--text-secondary);font-size:.75rem;padding:1rem;text-align:center}.executions-list{display:flex;flex-direction:column;gap:.5rem}.execution-item{align-items:center;background:var(--bg-secondary);border-radius:6px;cursor:pointer;display:flex;font-size:.75rem;gap:.75rem;padding:.5rem;transition:background .2s}.execution-item:hover{background:var(--bg-hover)}.execution-item.running{border-left:3px solid #3b82f6}.execution-item.completed{border-left:3px solid #22c55e}.execution-item.failed{border-left:3px solid #ef4444}.execution-run{align-items:center;display:flex;gap:.375rem;min-width:55px}.status-badge{border-radius:3px;font-size:.625rem;padding:.125rem .25rem}.status-badge.completed{color:#22c55e}.status-badge.running{animation:pulse 1s infinite}.status-badge.failed{color:#ef4444}.execution-time{color:var(--text-secondary);min-width:90px;white-space:nowrap}.execution-results{display:flex;flex:1 1;gap:.25rem}.execution-results .sev{border-radius:3px;font-size:.625rem;font-weight:600;padding:.125rem .25rem}.execution-results .sev.critical{background:#8b000033;color:#dc2626}.execution-results .sev.high{background:#ef444433;color:#ef4444}.execution-results .sev.medium{background:#f59e0b33;color:#f59e0b}.execution-results .sev.low{background:#22c55e33;color:#22c55e}.execution-results .error-msg{color:#ef4444;font-style:italic}.execution-results .running-msg{color:#3b82f6;font-style:italic}.execution-delta{display:flex;gap:.25rem}.execution-delta .delta{border-radius:3px;font-size:.625rem;font-weight:600;padding:.125rem .25rem}.execution-delta .delta.new{background:#ef444426;color:#ef4444}.execution-delta .delta.resolved{background:#22c55e26;color:#22c55e}.view-all{background:#0000!important;border:none!important;color:var(--primary-color)!important;font-size:.75rem!important;margin-top:.5rem;padding:.5rem!important;text-align:center;width:100%}.view-all:hover{text-decoration:underline}.cron-builder{display:flex;flex-direction:column;gap:1rem}.cron-mode-toggle{background:var(--bg-tertiary);border-radius:8px;display:flex;gap:4px;padding:4px}.mode-btn{background:#0000;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.mode-btn:hover{color:var(--text-primary)}.mode-btn.active{background:var(--primary-color);color:#fff}.preset-selection{display:flex;flex-direction:column;gap:.75rem}.preset-selection>label{color:var(--text-primary);font-size:.875rem;font-weight:500}.preset-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.preset-btn{align-items:center;background:var(--bg-tertiary);border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;padding:.75rem;transition:all .2s}.preset-btn:hover{background:var(--bg-hover);border-color:var(--border-color)}.preset-btn.selected{background:#3b82f61a;border-color:var(--primary-color)}.preset-label{color:var(--text-primary);font-size:.8rem;font-weight:500}.preset-cron{color:var(--text-tertiary);font-family:monospace;font-size:.7rem;margin-top:.25rem}.custom-builder{display:flex;flex-direction:column;gap:1rem}.cron-direct-input{display:flex;flex-direction:column;gap:.5rem}.cron-direct-input label{color:var(--text-primary);font-size:.875rem;font-weight:500}.cron-direct-input input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:monospace;font-size:1rem;letter-spacing:2px;padding:.75rem;text-align:center}.cron-direct-input input:focus{border-color:var(--primary-color);outline:none}.cron-fields{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(5,1fr)}.cron-field{display:flex;flex-direction:column;gap:.25rem}.cron-field label{color:var(--text-secondary);font-size:.7rem;text-align:center;text-transform:uppercase}.cron-field input{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:monospace;font-size:.875rem;padding:.5rem;text-align:center}.cron-field input:focus{border-color:var(--primary-color);outline:none}.field-hint{color:var(--text-tertiary);font-size:.65rem;text-align:center}.cron-preview{background:var(--bg-tertiary);border-radius:8px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.preview-description,.preview-expression{align-items:center;display:flex;gap:.5rem}.preview-label{color:var(--text-secondary);font-size:.75rem;min-width:80px;text-transform:uppercase}.preview-expression code{background:var(--bg-primary);border-radius:4px;color:var(--primary-color);font-family:monospace;font-size:.9rem;padding:.25rem .5rem}.preview-description span:not(.preview-label){color:var(--text-primary);font-size:.875rem}.cron-help{margin-top:.5rem}.cron-help details{background:var(--bg-tertiary);border-radius:8px;overflow:hidden}.cron-help summary{color:var(--text-secondary);cursor:pointer;font-size:.875rem;padding:.75rem 1rem;-webkit-user-select:none;user-select:none}.cron-help summary:hover{color:var(--text-primary)}.help-content{border-top:1px solid var(--border-color);padding:1rem}.help-content p{color:var(--text-secondary);font-size:.875rem;margin:0 0 .75rem}.help-content table{border-collapse:collapse;font-size:.8rem;margin-bottom:1rem;width:100%}.help-content td,.help-content th{border-bottom:1px solid var(--border-color);padding:.5rem;text-align:left}.help-content th{background:var(--bg-secondary);color:var(--text-primary);font-weight:500}.help-content td{color:var(--text-secondary)}.help-content .examples{line-height:1.8;margin:0}.help-content .examples code{background:var(--bg-secondary);border-radius:3px;color:var(--primary-color);font-family:monospace;font-size:.8rem;padding:.125rem .375rem}@media (max-width:640px){.preset-grid{grid-template-columns:repeat(2,1fr)}.cron-fields{grid-template-columns:repeat(3,1fr)}.cron-fields .cron-field:nth-child(4),.cron-fields .cron-field:nth-child(5){grid-column:span 1}}.schedule-form-container{margin:0 auto;max-width:900px;padding:1.5rem}.schedule-form-header{margin-bottom:2rem}.schedule-form-header h1{color:var(--text-primary);font-size:1.75rem;margin:0}.schedule-form-header p{color:var(--text-secondary);margin:.25rem 0 0}.schedule-form{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.form-tabs{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);display:flex;overflow-x:auto}.form-tabs .tab{background:none;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;padding:1rem 1.5rem;transition:all .2s;white-space:nowrap}.form-tabs .tab:hover{background:#ffffff0d;color:var(--text-primary)}.form-tabs .tab.active{border-bottom-color:var(--primary-color);color:var(--primary-color)}.form-content{padding:1.5rem}.form-section{display:flex;flex-direction:column;gap:1.25rem}.form-section h3{color:var(--text-primary);font-size:1.125rem;margin:0}.section-description{color:var(--text-secondary);font-size:.875rem;margin:-.5rem 0 .5rem}.form-group{gap:.5rem}.form-group label{color:var(--text-primary);font-size:.875rem;font-weight:500}.form-group input[type=number],.form-group input[type=text],.form-group select,.form-group textarea{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.875rem;padding:.75rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f633;outline:none}.form-group input:disabled,.form-group select:disabled{cursor:not-allowed;opacity:.6}.form-group .help-text{color:var(--text-tertiary);font-size:.75rem}.form-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:.5rem}.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.radio-group{display:flex;flex-direction:column;gap:.75rem}.radio-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:.5rem}.radio-group input[type=radio]{cursor:pointer;height:18px;width:18px}.targets-selection{background:var(--bg-tertiary);border-radius:8px;padding:1rem}.targets-header{align-items:center;color:var(--text-secondary);display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:1rem}.targets-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.target-item{align-items:center;background:var(--bg-secondary);border-radius:6px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:background .2s}.target-item:hover{background:var(--bg-hover)}.target-info{display:flex;flex:1 1;flex-direction:column;gap:.125rem}.target-name{color:var(--text-primary);font-size:.875rem;font-weight:500}.target-address{color:var(--text-secondary);font-family:monospace;font-size:.75rem}.target-type{background:var(--bg-tertiary);border-radius:4px;font-size:.65rem;padding:.125rem .5rem;text-transform:uppercase}.no-targets,.target-type{color:var(--text-secondary)}.no-targets{padding:2rem;text-align:center}.config-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.config-group{display:flex;flex-direction:column;gap:.5rem}.config-group h4{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:.875rem;margin:0;padding-bottom:.5rem}.config-item{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.25rem 0}.config-item:hover{color:var(--text-primary)}.config-item input[type=checkbox]{height:16px;width:16px}.form-actions{background:var(--bg-tertiary);border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:flex-end;padding:1rem 1.5rem}.form-actions .btn{padding:.75rem 1.5rem}.alert{align-items:center;border-radius:8px;justify-content:space-between;margin-bottom:1rem;padding:1rem}.alert-danger{background:#ef44441a;border:1px solid #ef44444d;color:#ef4444}.alert-close{background:none;border:none;color:inherit;cursor:pointer;font-size:1.25rem}.btn-primary{background:var(--primary-color,#3b82f6)}.btn-primary:hover{background:#2563eb;background:var(--primary-hover,#2563eb)}.btn-primary:disabled{opacity:.6}.btn-secondary{background:var(--bg-tertiary)}@media (max-width:768px){.form-tabs{flex-wrap:nowrap;overflow-x:auto}.form-tabs .tab{font-size:.8rem;padding:.75rem 1rem}.config-grid,.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.execution-history{display:flex;flex-direction:column;gap:1rem}.execution-history.empty{padding:2rem;text-align:center}.empty-icon{font-size:3rem;margin-bottom:1rem}.execution-history.empty h3{color:var(--text-primary);margin:0 0 .5rem}.execution-history.empty p{color:var(--text-secondary)}.history-header{align-items:center;display:flex;justify-content:space-between}.history-header h3{color:var(--text-primary);font-size:1rem;margin:0}.execution-table{background:var(--bg-tertiary);border-radius:8px;overflow:hidden}.table-header,.table-row{grid-gap:.5rem;align-items:center;display:grid;gap:.5rem;grid-template-columns:80px 100px 160px 80px 150px 80px 100px;padding:.75rem 1rem}.table-header{background:var(--bg-secondary);color:var(--text-secondary);font-size:.75rem;font-weight:600;text-transform:uppercase}.table-row{border-bottom:1px solid var(--border-color);font-size:.875rem}.table-row:last-child{border-bottom:none}.table-row:hover{background:var(--bg-hover)}.table-row.running{background:#3b82f60d}.table-row.error{background:#ef44440d}.col-run{display:flex;flex-direction:column}.run-number{color:var(--text-primary);font-weight:600}.triggered-by{color:var(--text-tertiary);font-size:.65rem}.col-status .status-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.status-badge.success{background:#22c55e26;color:#22c55e}.status-badge.running{background:#3b82f626;color:#3b82f6}.status-badge.error{background:#ef444426;color:#ef4444}.status-badge.cancelled{background:#6b728026;color:#6b7280}.status-badge.pending{background:#f59e0b26;color:#f59e0b}.col-time,.status-icon{font-size:.8rem}.col-time{color:var(--text-secondary)}.col-duration{color:var(--text-primary);font-family:monospace}.results-summary{display:flex;flex-direction:column;gap:.25rem}.severity-counts{gap:.25rem}.severity-counts .severity{border-radius:3px;font-size:.7rem;font-weight:600;padding:.125rem .375rem}.severity.critical{background:#dc262633;color:#dc2626}.severity.high{background:#ef444433;color:#ef4444}.severity.medium{background:#f59e0b33;color:#f59e0b}.severity.low{background:#3b82f633;color:#3b82f6}.total-results{color:var(--text-tertiary);font-size:.7rem}.delta-summary{display:flex;gap:.25rem}.delta{border-radius:3px;font-size:.75rem;font-weight:600;padding:.125rem .375rem}.delta.new{background:#ef444426;color:#ef4444}.delta.resolved{background:#22c55e26;color:#22c55e}.no-change{color:var(--text-tertiary)}.col-actions .btn-sm{font-size:.75rem;padding:.25rem .5rem}.btn{padding:.5rem 1rem}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-hover)}@media (max-width:900px){.table-header,.table-row{font-size:.8rem;grid-template-columns:60px 80px 140px 60px 1fr 60px 80px}.col-time{font-size:.7rem}}@media (max-width:640px){.table-header{display:none}.table-row{display:flex;flex-direction:column;gap:.5rem;padding:1rem}.table-row>span{align-items:center;display:flex;justify-content:space-between}.table-row>span:before{color:var(--text-secondary);content:attr(data-label);font-size:.75rem;font-weight:600}}.col-actions{align-items:center;display:flex;gap:.5rem}.report-dropdown{display:inline-block;position:relative}.report-dropdown .btn-primary{background:#3b82f6;color:#fff}.report-dropdown .btn-primary:hover{background:#2563eb}.dropdown-menu{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:4px;min-width:120px;overflow:hidden;position:absolute;right:0;top:100%;z-index:100}.dropdown-menu button{align-items:center;background:#fff;border:none;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem .75rem;text-align:left;transition:background .15s;width:100%}.dropdown-menu button:hover:not(:disabled){background:#f3f4f6}.dropdown-menu button:disabled{cursor:not-allowed;opacity:.6}.dropdown-menu button:not(:last-child){border-bottom:1px solid #f3f4f6}.trend-chart{display:flex;flex-direction:column;gap:1rem}.trend-chart.empty{background:var(--bg-tertiary);border-radius:8px;color:var(--text-secondary);padding:2rem;text-align:center}.chart-container{display:flex;gap:.5rem;height:220px}.y-axis{align-items:flex-end;color:var(--text-tertiary);display:flex;flex-direction:column;font-size:.7rem;justify-content:space-between;min-width:30px;padding:10px 8px 30px 0}.chart-area{background:var(--bg-tertiary);border-radius:8px;flex:1 1;padding:10px;position:relative}.grid-lines{bottom:30px;left:10px;pointer-events:none;position:absolute;right:10px;top:10px}.grid-line{background:var(--border-color);height:1px;left:0;position:absolute;right:0}.bars{align-items:flex-end;bottom:30px;left:10px;right:10px;top:10px}.bar-group,.bars{display:flex;position:absolute}.bar-group{align-items:center;bottom:0;flex-direction:column}.stacked-bar{border-radius:4px 4px 0 0;display:flex;flex-direction:column;overflow:hidden;transition:all .3s;width:100%}.stacked-bar:hover{box-shadow:0 2px 8px #0000004d;transform:scaleX(1.1)}.bar-segment{min-height:2px;transition:height .3s;width:100%}.bar-segment.critical{background:#dc2626}.bar-segment.high{background:#ef4444}.bar-segment.medium{background:#f59e0b}.bar-segment.low{background:#3b82f6}.bar-segment.info{background:#6b7280}.delta-indicators{display:flex;gap:2px;margin-top:2px;position:absolute;top:-18px}.delta-indicator{border-radius:2px;font-size:.55rem;font-weight:600;padding:1px 3px}.delta-indicator.new{background:#ef444433;color:#ef4444}.delta-indicator.resolved{background:#22c55e33;color:#22c55e}.bar-label{bottom:-25px;color:var(--text-tertiary);font-size:.65rem;position:absolute;white-space:nowrap}.chart-legend{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;padding:.5rem}.legend-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;gap:.25rem}.legend-color{border-radius:2px;height:12px;width:12px}.legend-item.critical .legend-color{background:#dc2626}.legend-item.high .legend-color{background:#ef4444}.legend-item.medium .legend-color{background:#f59e0b}.legend-item.low .legend-color{background:#3b82f6}.legend-item.info .legend-color{background:#6b7280}@media (max-width:640px){.chart-container{height:180px}.chart-legend{gap:.5rem}.legend-item{font-size:.65rem}}.severity-line-chart{background-color:#fff;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.severity-line-chart.empty{align-items:center;color:#6b7280;display:flex;flex-direction:column;justify-content:center;padding:2rem;text-align:center}.severity-line-chart.empty p{font-size:.875rem;margin:0}.severity-line-chart .chart-title{align-items:center;color:#111827;display:flex;font-size:1rem;font-weight:600;margin:0 0 1rem}.severity-line-chart svg{height:auto;max-height:280px;width:100%}.severity-line-chart .chart-legend{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-top:1rem}.severity-line-chart .legend-item{align-items:center;color:#374151;display:flex;font-size:.75rem;gap:.5rem}.severity-line-chart .legend-color{border-radius:2px;height:12px;width:12px}.severity-line-chart .legend-item.critical .legend-color{background-color:#dc2626}.severity-line-chart .legend-item.high .legend-color{background-color:#f97316}.severity-line-chart .legend-item.medium .legend-color{background-color:#f59e0b}.severity-line-chart .legend-item.low .legend-color{background-color:#3b82f6}[data-theme=dark] .severity-line-chart{background-color:#1f2937;background-color:var(--color-surface,#1f2937)}[data-theme=dark] .severity-line-chart .chart-title{color:#f3f4f6;color:var(--color-text-primary,#f3f4f6)}[data-theme=dark] .severity-line-chart .legend-item{color:#9ca3af;color:var(--color-text-secondary,#9ca3af)}[data-theme=dark] .severity-line-chart.empty{color:#6b7280;color:var(--color-text-tertiary,#6b7280)}.severity-line-chart circle{cursor:pointer;transition:r .2s ease}.severity-line-chart circle:hover{r:6}@keyframes drawLine{0%{stroke-dashoffset:1000}to{stroke-dashoffset:0}}.severity-line-chart .lines path{stroke-dasharray:1000;animation:drawLine 1s ease-out forwards}.clients-page{padding:0}.clients-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.clients-header h1{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin:0}.clients-header h1 i{color:var(--primary-color);margin-right:.75rem}.clients-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.stat-card{background:var(--card-bg);border:1px solid var(--border-color);padding:1.25rem}.stat-card .stat-icon{align-items:center;border-radius:10px;display:flex;font-size:1.25rem;height:48px;justify-content:center;width:48px}.stat-card .stat-icon.clients{background:#6366f11a;color:#6366f1}.stat-card .stat-icon.contacts{background:#10b9811a;color:#10b981}.stat-card .stat-icon.projects{background:#f59e0b1a;color:#f59e0b}.stat-card .stat-icon.active{background:#22c55e1a;color:#22c55e}.stat-card .stat-info{flex:1 1}.stat-card .stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1.2}.stat-card .stat-label{color:var(--text-secondary);font-size:.875rem}.clients-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.search-box{flex:1 1;min-width:250px;position:relative}.search-box i{color:var(--text-muted);left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.search-box input{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.9375rem;padding:.75rem 1rem .75rem 2.75rem;width:100%}.search-box input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11a;outline:none}.filter-select{min-width:180px}.filter-select select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.9375rem;padding:.75rem 1rem;width:100%}.filter-select select:focus{border-color:var(--primary-color);outline:none}.clients-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.client-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;overflow:hidden;transition:all .2s ease}.client-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #0000001a}.client-card.inactive{opacity:.7}.client-card-header{align-items:flex-start;display:flex;justify-content:space-between;padding:1.25rem 1.25rem 0}.client-logo{align-items:center;background:var(--bg-tertiary);border-radius:10px;display:flex;height:56px;justify-content:center;overflow:hidden;width:56px}.client-logo img{height:100%;object-fit:cover;width:100%}.client-logo i{color:var(--text-muted);font-size:1.5rem}.client-status .status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.status-badge.inactive{background:#6b72801a;color:#6b7280}.client-card-body{padding:1rem 1.25rem}.client-name{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.client-industry{background:var(--bg-tertiary);border-radius:4px;color:var(--text-secondary);display:inline-block;font-size:.75rem;margin-bottom:.75rem;padding:.25rem .5rem}.client-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.875rem;line-height:1.5;margin:0 0 1rem;overflow:hidden}.client-meta{display:flex;flex-direction:column;gap:.5rem}.meta-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.8125rem;gap:.5rem}.meta-item i{color:var(--text-muted);width:16px}.meta-item a{color:var(--primary-color);text-decoration:none}.meta-item a:hover{text-decoration:underline}.client-card-stats{border-top:1px solid var(--border-color);display:flex;margin-top:1rem}.client-card-stats .stat{align-items:center;border-right:1px solid var(--border-color);display:flex;flex:1 1;flex-direction:column;padding:.75rem}.client-card-stats .stat:last-child{border-right:none}.client-card-stats .stat-value{color:var(--text-primary);font-size:1.25rem;font-weight:600}.client-card-stats .stat-label{color:var(--text-muted);font-size:.75rem}.client-card-actions{background:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;gap:.5rem;padding:.75rem 1.25rem}.client-card-actions .btn{flex:1 1;font-size:.875rem;padding:.5rem}.client-card-actions .btn i{margin-right:.25rem}.empty-state{grid-column:1/-1}.client-modal{max-width:640px}.contact-modal{max-width:560px}.form-section-divider{align-items:center;display:flex;margin:1.5rem 0}.form-section-divider:after,.form-section-divider:before{background:var(--border-color);content:"";flex:1 1;height:1px}.form-section-divider span{color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:0 1rem;text-transform:uppercase}.client-detail{padding:0}.client-detail-header{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem}.client-detail-logo{align-items:center;background:var(--bg-tertiary);border-radius:12px;display:flex;height:80px;justify-content:center;overflow:hidden;width:80px}.client-detail-logo img{height:100%;object-fit:cover;width:100%}.client-detail-logo i{color:var(--text-muted);font-size:2rem}.client-detail-info{flex:1 1}.client-detail-info h1{font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.client-detail-actions{display:flex;gap:.75rem}.contacts-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem}.contacts-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.contacts-section-header h2{font-size:1.125rem;font-weight:600;margin:0}.contacts-table{border-collapse:collapse;width:100%}.contacts-table td,.contacts-table th{border-bottom:1px solid var(--border-color);padding:.75rem;text-align:left}.contacts-table th{color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.contacts-table tr:last-child td{border-bottom:none}.contact-name{gap:.75rem}.contact-avatar,.contact-name{align-items:center;display:flex}.contact-avatar{background:var(--primary-color);border-radius:50%;color:#fff;font-size:.875rem;font-weight:600;height:36px;justify-content:center;width:36px}.contact-badges{display:flex;gap:.5rem}.contact-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.6875rem;font-weight:500;padding:.125rem .5rem}.contact-badge.primary{background:#6366f11a;color:#6366f1}.contact-badge.reports{background:#10b9811a;color:#10b981}.contact-badge.has-account{background:#f59e0b1a;color:#f59e0b}@media (max-width:768px){.clients-header{align-items:stretch;flex-direction:column}.clients-stats{grid-template-columns:repeat(2,1fr)}.clients-filters{flex-direction:column}.search-box{min-width:auto}.clients-grid{grid-template-columns:1fr}.client-detail-header{flex-direction:column;text-align:center}.client-detail-actions{justify-content:center}}.report-detail-page,.scan-reports-page{padding:0}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.page-header .back-btn{margin-right:.5rem}.page-header h1{color:var(--color-text-primary);font-size:1.75rem;font-weight:600;margin:0}.page-header h1 i{color:var(--color-primary-500);margin-right:.75rem}.header-description{color:var(--color-text-secondary);font-size:.9375rem;margin:.25rem 0 0}.header-info{flex:1 1}.report-meta{align-items:center;color:var(--color-text-secondary);gap:.5rem;margin-top:.25rem}.report-meta .separator{color:var(--color-border-primary)}.reports-toolbar{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.filter-group{align-items:center;display:flex;gap:.5rem}.filter-group label{color:var(--color-text-secondary);font-weight:500}.filter-group select{background:var(--color-surface);border:1px solid var(--color-border-primary);color:var(--color-text-primary);min-width:150px}.reports-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.reports-stats .stat-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:8px;display:flex;gap:1rem;padding:1.25rem}.reports-stats .stat-icon{align-items:center;border-radius:10px;display:flex;font-size:1.25rem;height:48px;justify-content:center;width:48px}.stat-card.pending .stat-icon{background:#f59e0b1a;color:#f59e0b}.stat-card.reviewed .stat-icon{background:#3b82f61a;color:#3b82f6}.stat-card.sent .stat-icon{background:#22c55e1a;color:#22c55e}.reports-table-container{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:10px;overflow:hidden}.reports-table{border-collapse:collapse;width:100%}.reports-table td,.reports-table th{border-bottom:1px solid var(--color-border-primary);padding:1rem;text-align:left}.reports-table th{background:var(--color-background-secondary);color:var(--color-text-muted);font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.reports-table tr:last-child td{border-bottom:none}.reports-table tr:hover{background:var(--color-background-secondary)}.report-info strong{color:var(--color-text-primary);display:block;margin-bottom:.25rem}.severity-counts{display:flex;flex-wrap:wrap;gap:.5rem}.severity-badge{padding:.25rem .5rem}.severity-badge.zero{background:var(--color-background-tertiary);color:var(--color-text-muted)}.fp-count{color:var(--color-text-muted);font-size:.75rem;margin-top:.5rem}.fp-count i{margin-right:.25rem}.status-badge.pending,.status-badge.warning{background:#f59e0b1a;color:#f59e0b}.status-badge.info,.status-badge.reviewed{background:#3b82f61a;color:#3b82f6}.status-badge.sent,.status-badge.success{background:#22c55e1a;color:#22c55e}.status-badge.archived,.status-badge.secondary{background:#6b72801a;color:#6b7280}.sent-info{color:var(--color-text-muted);font-size:.75rem;margin-top:.25rem}.action-buttons{display:flex;gap:.5rem}.pagination{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:1.5rem;padding:1rem}.page-info{color:var(--color-text-secondary)}.report-summary{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:1.5rem}.summary-card{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:10px;padding:1.5rem}.summary-card h3{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin:0 0 1rem}.severity-breakdown{display:flex;flex-wrap:wrap;gap:1rem}.severity-item{align-items:center;border-radius:8px;display:flex;flex-direction:column;min-width:70px;padding:.75rem 1rem}.severity-item.critical{background:#ef44441a}.severity-item.high{background:#f973161a}.severity-item.medium{background:#f59e0b1a}.severity-item.low{background:#3b82f61a}.severity-item.info{background:#6b72801a}.severity-item .count{font-size:1.5rem;font-weight:700}.severity-item.critical .count{color:#ef4444}.severity-item.high .count{color:#f97316}.severity-item.medium .count{color:#f59e0b}.severity-item.low .count{color:#3b82f6}.severity-item.info .count{color:#6b7280}.severity-item .label{color:var(--color-text-muted);font-size:.75rem;text-transform:uppercase}.new-findings{background:#f59e0b1a;border-radius:6px;color:#f59e0b;font-size:.875rem;margin-top:1rem;padding:.75rem}.new-findings i{margin-right:.5rem}.status-timeline{display:flex;flex-direction:column;gap:1rem}.timeline-item{align-items:flex-start;display:flex;gap:.75rem;opacity:.5}.timeline-item.complete{opacity:1}.timeline-icon{align-items:center;background:var(--color-background-tertiary);border-radius:50%;color:var(--color-text-muted);display:flex;font-size:.875rem;height:32px;justify-content:center;width:32px}.timeline-item.complete .timeline-icon{background:#22c55e1a;color:#22c55e}.timeline-content{display:flex;flex-direction:column}.timeline-content strong{color:var(--color-text-primary);font-size:.875rem}.timeline-content span{color:var(--color-text-muted);font-size:.75rem}.review-section{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:10px;margin-bottom:1.5rem;padding:1.5rem}.section-header{margin-bottom:1rem}.section-header h2{color:var(--color-text-primary);font-size:1.125rem}.section-header h2 i{color:var(--color-primary-500);margin-right:.5rem}.section-hint{color:var(--color-text-muted);font-size:.8125rem}.review-notes-input{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:6px;color:var(--color-text-primary);font-family:inherit;font-size:.9375rem;padding:1rem;resize:vertical;width:100%}.review-notes-input:focus{border-color:var(--color-primary-500);outline:none}.findings-section{background:var(--color-surface);border:1px solid var(--color-border-primary)}.findings-list{gap:1rem}.finding-card{border:1px solid var(--color-border-primary)}.finding-card.false-positive{background:var(--color-background-secondary);opacity:.6}.finding-header{align-items:center;background:var(--color-background-secondary);display:flex;gap:1rem;padding:1rem}.finding-severity{flex-shrink:0}.finding-title{flex:1 1}.finding-title strong{color:var(--color-text-primary);display:block;margin-bottom:.25rem}.finding-target{color:var(--color-text-muted);font-family:var(--font-family-mono)}.finding-actions{flex-shrink:0}.fp-toggle{align-items:center;color:var(--color-text-secondary);display:flex;font-size:.8125rem;gap:.5rem}.fp-toggle,.fp-toggle input{cursor:pointer}.finding-description{color:var(--color-text-secondary);font-size:.9375rem;line-height:1.6}.finding-description,.finding-evidence{border-top:1px solid var(--color-border-primary);padding:1rem}.finding-evidence{background:var(--color-background-tertiary)}.finding-evidence strong{color:var(--color-text-muted);display:block;font-size:.75rem;margin-bottom:.5rem;text-transform:uppercase}.finding-evidence pre{background:var(--color-background);border-radius:4px;color:var(--color-text-primary);font-size:.8125rem;margin:0;overflow-x:auto;padding:.75rem;white-space:pre-wrap;word-break:break-all}.empty-findings{color:var(--color-text-muted);padding:2rem}.empty-findings i{font-size:2rem;margin-bottom:.5rem}.send-modal{max-width:500px}.send-summary{background:var(--color-background-secondary);border-radius:6px;margin:1rem 0;padding:1rem}.recipients-list h4,.send-summary h4{font-size:.875rem;font-weight:600;margin:0 0 .75rem}.recipients-list ul,.send-summary ul{list-style:none;margin:0;padding:0}.recipients-list li,.send-summary li{font-size:.875rem;padding:.25rem 0}.recipients-list{margin-top:1rem}.recipients-list li i{color:var(--color-text-muted);margin-right:.5rem}.empty-state{background:var(--color-surface);border:1px dashed var(--color-border-primary);padding:4rem 2rem}.empty-state i{color:var(--color-text-muted)}.empty-state h3{color:var(--color-text-primary);font-size:1.25rem}.empty-state p,.loading-container{color:var(--color-text-secondary)}.loading-container i{color:var(--color-primary-500)}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column}.header-actions{flex-direction:column;width:100%}.severity-breakdown{justify-content:center}.finding-header{align-items:flex-start;flex-direction:column}}.client-portal,.client-report-view{margin:0 auto;max-width:1200px;padding:0}.portal-header{margin-bottom:2rem}.welcome-section h1{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.welcome-section p{color:var(--text-secondary);margin:0}.portal-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.portal-stats .stat-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;display:flex;gap:1rem;padding:1.5rem}.portal-stats .stat-icon{align-items:center;border-radius:12px;display:flex;font-size:1.5rem;height:56px;justify-content:center;width:56px}.stat-icon.projects{background:#6366f11a;color:#6366f1}.stat-icon.reports{background:#22c55e1a;color:#22c55e}.stat-icon.findings{background:#ef44441a;color:#ef4444}.portal-stats .stat-value{color:var(--text-primary);font-size:2rem;font-weight:700;line-height:1}.portal-stats .stat-label{color:var(--text-secondary);font-size:.875rem}.portal-section{margin-bottom:2rem}.portal-section .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.portal-section .section-header h2{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.portal-section .section-header h2 i{color:var(--primary-color);margin-right:.5rem}.projects-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;cursor:pointer;padding:1.25rem;transition:all .2s ease}.project-card:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #0000001a}.project-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem}.project-card-header h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0}.project-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.875rem;line-height:1.5;margin:0 0 1rem;overflow:hidden}.project-card-footer{color:var(--text-muted);display:flex;font-size:.8125rem;gap:1rem}.project-card-footer i{margin-right:.25rem}.reports-list{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;overflow:hidden}.report-item{align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;gap:1rem;padding:1rem 1.25rem;transition:background .2s ease}.report-item:last-child{border-bottom:none}.report-item:hover{background:var(--bg-secondary)}.report-icon{align-items:center;background:#22c55e1a;border-radius:8px;color:#22c55e;display:flex;font-size:1.125rem;height:40px;justify-content:center;width:40px}.report-info{flex:1 1}.report-info h4{color:var(--text-primary);font-size:.9375rem;font-weight:600;margin:0 0 .25rem}.report-date{color:var(--text-muted);font-size:.8125rem}.report-findings{display:flex;flex-wrap:wrap;gap:.5rem}.finding-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.6875rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase}.finding-badge.critical{background:#ef44441a;color:#ef4444}.finding-badge.high{background:#f973161a;color:#f97316}.finding-badge.medium{background:#f59e0b1a;color:#f59e0b}.finding-badge.low{background:#3b82f61a;color:#3b82f6}.finding-badge.clean{background:#22c55e1a;color:#22c55e}.report-action{color:var(--text-muted)}.help-section{margin-top:2rem}.help-card{align-items:center;background:#6366f10d;border:1px solid #6366f133;border-radius:10px;display:flex;gap:1rem;padding:1.25rem}.help-card>i{color:#6366f1;font-size:1.5rem}.help-card h4{color:var(--text-primary);font-size:.9375rem;font-weight:600;margin:0 0 .25rem}.help-card p{color:var(--text-secondary);font-size:.875rem;margin:0}.report-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem}.report-title{flex:1 1}.report-title h1{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.report-meta{color:var(--text-secondary);display:flex;font-size:.875rem;gap:1.5rem}.report-meta i{margin-right:.5rem}.executive-summary{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;margin-bottom:1.5rem;padding:1.5rem}.executive-summary h2{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 1.25rem}.executive-summary h2 i{color:var(--primary-color);margin-right:.5rem}.summary-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:1rem}.summary-card{background:var(--bg-secondary);border-radius:8px;padding:1rem;text-align:center}.summary-card.total{background:#6366f11a}.summary-card.critical{background:#ef44441a}.summary-card.high{background:#f973161a}.summary-card.medium{background:#f59e0b1a}.summary-value{color:var(--text-primary);font-size:2rem;font-weight:700}.summary-card.critical .summary-value{color:#ef4444}.summary-card.high .summary-value{color:#f97316}.summary-card.medium .summary-value{color:#f59e0b}.summary-label{color:var(--text-muted);font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.alert-banner{align-items:center;border-radius:8px;display:flex;font-size:.9375rem;gap:.75rem;padding:1rem}.alert-banner.critical{background:#ef44441a;border:1px solid #ef44444d;color:#ef4444}.alert-banner i{font-size:1.25rem}.findings-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;margin-bottom:1.5rem;padding:1.5rem}.findings-section .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.findings-section h2{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0}.findings-section h2 i{color:var(--primary-color);margin-right:.5rem}.filter-group select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.875rem;padding:.5rem 1rem}.findings-list{display:flex;flex-direction:column;gap:.75rem}.finding-card{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.finding-card .finding-header{align-items:center;background:var(--bg-secondary);cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:background .2s ease}.finding-card .finding-header:hover,.finding-number{background:var(--bg-tertiary)}.finding-number{align-items:center;border-radius:50%;color:var(--text-muted);display:flex;font-size:.75rem;font-weight:600;height:32px;justify-content:center;width:32px}.finding-card .finding-title{flex:1 1}.finding-card .finding-title strong{color:var(--text-primary);display:block;margin-bottom:.25rem}.finding-target{font-family:var(--font-mono);font-size:.8125rem}.expand-icon,.finding-target{color:var(--text-muted)}.finding-details{border-top:1px solid var(--border-color);padding:1.25rem}.detail-section{margin-bottom:1.25rem}.detail-section:last-child{margin-bottom:0}.detail-section h4{color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.detail-section p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6;margin:0}.evidence-block{background:var(--bg-tertiary);border-radius:6px;font-size:.8125rem;margin:0;overflow-x:auto;padding:1rem;white-space:pre-wrap;word-break:break-all}.cve-link{align-items:center;color:var(--primary-color);display:inline-flex;gap:.5rem;text-decoration:none}.cve-link:hover{text-decoration:underline}.empty-findings{color:var(--text-muted);padding:3rem;text-align:center}.empty-findings i{color:#22c55e;font-size:2.5rem;margin-bottom:.75rem}.report-footer{background:var(--bg-secondary);border-radius:10px;margin-top:2rem;padding:1.5rem;text-align:center}.report-footer p{color:var(--text-secondary);font-size:.875rem;margin:0 0 .5rem}.report-footer .confidential{color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:1px;margin:0;text-transform:uppercase}.status-badge{text-transform:capitalize}.status-badge.active{background:#22c55e1a;color:#22c55e}.status-badge.completed{background:#3b82f61a;color:#3b82f6}.severity-badge{border-radius:4px;font-weight:600}.severity-badge.critical{background:#ef44441a;color:#ef4444}.severity-badge.high{background:#f973161a;color:#f97316}.severity-badge.medium{background:#f59e0b1a;color:#f59e0b}.severity-badge.low{background:#3b82f61a;color:#3b82f6}.severity-badge.info{background:#6b72801a;color:#6b7280}.empty-state{background:var(--card-bg);border:1px dashed var(--border-color);border-radius:10px;padding:3rem}.empty-state i{color:var(--text-muted);font-size:2.5rem}.empty-state h3{color:var(--text-primary);font-size:1.125rem}.empty-state p,.loading-container{color:var(--text-secondary)}.loading-container{padding:4rem 2rem}.loading-container i{color:var(--primary-color);font-size:2rem;margin-bottom:1rem}@media print{.client-report-view{padding:0}.filter-group,.report-actions,.report-header .back-btn{display:none!important}.finding-card .finding-header{cursor:default}.finding-details{display:block!important}.expand-icon{display:none}}@media (max-width:768px){.portal-stats,.projects-grid{grid-template-columns:1fr}.report-header{align-items:flex-start;flex-direction:column}.report-meta{flex-direction:column;gap:.5rem}.summary-grid{grid-template-columns:repeat(2,1fr)}.finding-card .finding-header{flex-wrap:wrap}}.help-center-v2{margin:0 auto;max-width:1200px;padding:0 1.5rem 2rem}.help-header-v2{background:linear-gradient(135deg,var(--primary-color) 0,#4f46e5 100%);border-radius:16px;margin-bottom:2rem;overflow:hidden;padding:2.5rem 2rem;position:relative}.help-header-v2:before{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);height:400px;right:-10%;top:-50%;width:400px}.help-header-v2:after,.help-header-v2:before{content:"";pointer-events:none;position:absolute}.help-header-v2:after{background:radial-gradient(circle,#ffffff14 0,#0000 70%);bottom:-30%;height:300px;left:10%;width:300px}.help-header-content{position:relative;text-align:center;z-index:1}.help-header-v2 h1{align-items:center;color:#fff;display:flex;font-size:2rem;font-weight:700;gap:.75rem;justify-content:center;margin:0 0 .75rem}.help-header-v2 h1 i{font-size:1.75rem;opacity:.9}.help-header-v2 p{color:#ffffffd9;font-size:1.0625rem;margin:0 auto;max-width:500px}.help-tabs-v2{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;display:flex;gap:.5rem;justify-content:center;margin-bottom:2rem;margin-left:auto;margin-right:auto;padding:.375rem;width:-webkit-fit-content;width:fit-content}.help-tab{align-items:center;background:#0000;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.9375rem;font-weight:500;gap:.625rem;padding:.875rem 1.75rem;transition:all .2s ease}.help-tab:hover{background:var(--bg-tertiary);color:var(--text-primary)}.help-tab.active{background:var(--card-bg);box-shadow:0 2px 8px #6366f126;color:var(--primary-color)}.help-tab i{font-size:1rem}.guides-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.guide-card{align-items:flex-start;background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;cursor:pointer;display:flex;gap:1rem;overflow:hidden;padding:1.5rem;position:relative;transition:all .25s ease}.guide-card:before{background:var(--primary-color);background:var(--card-color,var(--primary-color));content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .25s ease;width:4px}.guide-card:hover{border-color:var(--card-color,var(--primary-color));box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}.guide-card:hover:before{opacity:1}.guide-card-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:52px;justify-content:center;width:52px}.guide-card-icon i{color:#fff;font-size:1.375rem}.guide-card-content{flex:1 1;min-width:0}.guide-card-content h3{color:var(--text-primary);font-size:1.0625rem;font-weight:600;margin:0 0 .5rem}.guide-card-content p{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin:0 0 .75rem}.guide-card-sections{color:var(--text-muted);font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.guide-card-arrow{color:var(--text-muted);transition:all .25s ease}.guide-card:hover .guide-card-arrow{color:var(--primary-color);color:var(--card-color,var(--primary-color));transform:translateX(4px)}.guide-detail{animation:fadeIn .3s ease}.guide-detail .back-btn{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;margin-bottom:1.5rem;padding:.625rem 1rem;transition:all .2s ease}.guide-detail .back-btn:hover{background:var(--bg-secondary);border-color:var(--primary-color);color:var(--text-primary)}.guide-detail .back-btn i{font-size:.875rem}.guide-detail-layout{grid-gap:2rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;display:grid;gap:2rem;grid-template-columns:260px 1fr;overflow:hidden}.guide-nav{background:var(--bg-secondary);border-right:1px solid var(--border-color);padding:1.5rem 0}.guide-nav-header{align-items:center;background:var(--card-bg);border-left:3px solid var(--primary-color);border-radius:0 8px 8px 0;color:var(--text-primary);display:flex;font-size:.9375rem;font-weight:600;gap:.75rem;margin:0 1rem 1rem;padding:.75rem 1.25rem}.guide-nav-header i{font-size:1rem}.guide-nav-list{list-style:none;margin:0;padding:0}.guide-nav-list li{align-items:center;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;gap:.625rem;margin:.25rem .75rem;padding:.75rem 1.25rem;transition:all .2s ease}.guide-nav-list li:hover{background:var(--bg-tertiary);color:var(--text-primary)}.guide-nav-list li.active{background:var(--primary-color);color:#fff;font-weight:500}.guide-nav-list li i{font-size:.8125rem;opacity:.75;text-align:center;width:18px}.guide-nav-list li.active i{opacity:1}.guide-content{max-width:800px;padding:2rem}.guide-content h2{align-items:center;border-bottom:2px solid var(--border-color);color:var(--text-primary);display:flex;font-size:1.5rem;font-weight:600;gap:.75rem;margin:0 0 1.5rem;padding-bottom:1rem}.guide-content h2 i{font-size:1.25rem}.guide-content-body{animation:fadeIn .3s ease}.guide-paragraph{color:var(--text-secondary);font-size:.9375rem;line-height:1.75;margin:0 0 1rem}.guide-paragraph strong{color:var(--text-primary);font-weight:600}.guide-list{margin:0 0 1.25rem;padding-left:1.5rem}.guide-list li{color:var(--text-secondary);font-size:.9375rem;line-height:1.65;margin:.5rem 0}.guide-list li strong{color:var(--text-primary);font-weight:600}.guide-list li.checked,.guide-list li.unchecked{align-items:flex-start;display:flex;gap:.5rem;list-style:none;margin-left:-1.5rem;padding-left:0}.guide-list li .check-icon{flex-shrink:0;font-weight:700}.guide-list li.checked .check-icon{color:#10b981;color:var(--success-color,#10b981)}.guide-list li.unchecked .check-icon{color:#ef4444;color:var(--error-color,#ef4444)}.inline-code{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--primary-color);font-family:SF Mono,Monaco,Cascadia Code,Consolas,monospace;font-size:.8125rem;padding:.125rem .5rem}.guide-pagination{border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:space-between;margin-top:2.5rem;padding-top:2rem}.pagination-btn{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;max-width:45%;padding:.875rem 1.25rem;transition:all .2s ease}.pagination-btn:hover{background:var(--card-bg);border-color:var(--primary-color);color:var(--primary-color)}.pagination-btn.prev{margin-right:auto}.pagination-btn.next{margin-left:auto}.pagination-btn i{font-size:.8125rem}.faq-section-v2{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;padding:1.75rem}.faq-controls{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem}.faq-search{flex:1 1;min-width:280px;position:relative}.faq-search i.fa-search{color:var(--text-muted);font-size:.875rem;left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.faq-search input{background:var(--bg-secondary);background:var(--input-bg,var(--bg-secondary));border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-size:.9375rem;padding:.875rem 2.5rem .875rem 2.75rem;transition:all .2s ease;width:100%}.faq-search input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11a;outline:none}.clear-search,.faq-search input::placeholder{color:var(--text-muted)}.clear-search{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;justify-content:center;padding:.25rem;position:absolute;right:.75rem;top:50%;transform:translateY(-50%);transition:all .2s ease}.clear-search:hover{background:var(--bg-tertiary);color:var(--text-primary)}.faq-filter select{-webkit-appearance:none;appearance:none;background:var(--bg-secondary);background:var(--input-bg,var(--bg-secondary));background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%236b7280' viewBox='0 0 16 16'%3E%3Cpath d='M8 11 3 6h10l-5 5z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;border:1px solid var(--border-color);border-radius:10px;color:var(--text-primary);cursor:pointer;font-size:.9375rem;min-width:180px;padding:.875rem 2.5rem .875rem 1rem;transition:all .2s ease}.faq-filter select:focus{border-color:var(--primary-color);outline:none}.faq-results-count{border-bottom:1px solid var(--border-color);color:var(--text-muted);font-size:.8125rem;margin-bottom:1rem;padding-bottom:1rem}.faq-empty{color:var(--text-muted);padding:3rem 2rem;text-align:center}.faq-empty i{font-size:3rem;margin-bottom:1.25rem;opacity:.5}.faq-empty h3{color:var(--text-secondary);font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.faq-empty p{font-size:.9375rem;margin:0 0 1.25rem}.faq-empty button{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:.875rem;padding:.625rem 1.25rem;transition:all .2s ease}.faq-empty button:hover{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.faq-list-v2{display:flex;flex-direction:column;gap:.75rem}.faq-item-v2{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;overflow:hidden;transition:all .2s ease}.faq-item-v2:hover{border-color:#6366f180;border-color:var(--primary-color-light,#6366f180)}.faq-item-v2.expanded{border-color:var(--primary-color);box-shadow:0 4px 12px #6366f114}.faq-question-v2{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;gap:1rem;padding:1rem 1.25rem;text-align:left;transition:background .2s ease;width:100%}.faq-question-v2:hover{background:var(--bg-tertiary)}.faq-category-badge{background:var(--primary-color);border-radius:5px;color:#fff;flex-shrink:0;font-size:.6875rem;font-weight:600;letter-spacing:.5px;padding:.25rem .625rem;text-transform:uppercase;white-space:nowrap}.faq-question-text{color:var(--text-primary);flex:1 1;font-size:.9375rem;font-weight:500;line-height:1.4}.faq-question-v2>i{color:var(--text-muted);font-size:.75rem;transition:transform .25s ease}.faq-item-v2.expanded .faq-question-v2>i{color:var(--primary-color)}.faq-answer-v2{animation:slideDown .25s ease;background:var(--card-bg);border-top:1px solid var(--border-color);padding:1.25rem 1.5rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.faq-answer-v2 p{color:var(--text-secondary);font-size:.9375rem;line-height:1.7;margin:0 0 .75rem}.faq-answer-v2 p:last-child{margin-bottom:0}.help-footer-v2{margin-top:2rem}.help-footer-card{align-items:center;background:linear-gradient(135deg,#6366f114,#6366f108);border:1px solid #6366f133;border-radius:12px;display:flex;gap:1.25rem;padding:1.5rem}.help-footer-card>i{color:var(--primary-color);font-size:2rem;opacity:.85}.help-footer-card h4{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 .375rem}.help-footer-card p{color:var(--text-secondary);font-size:.875rem;margin:0}@media (max-width:1024px){.guide-detail-layout{gap:1.5rem;grid-template-columns:220px 1fr}.guide-content{padding:1.5rem}}@media (max-width:860px){.guide-detail-layout{grid-template-columns:1fr}.guide-nav{border-bottom:1px solid var(--border-color);border-right:none;padding:1rem 0}.guide-nav-list{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 1rem}.guide-nav-list li{font-size:.8125rem;margin:0;padding:.5rem 1rem;white-space:nowrap}.guide-nav-header{margin:0 1rem .75rem}}@media (max-width:768px){.help-center-v2{padding:0 1rem 1.5rem}.help-header-v2{border-radius:12px;padding:1.75rem 1.5rem}.help-header-v2 h1{font-size:1.5rem}.help-header-v2 p{font-size:.9375rem}.help-tabs-v2{padding:.25rem;width:100%}.help-tab{flex:1 1;font-size:.875rem;justify-content:center;padding:.75rem 1rem}.help-tab span{display:none}.guides-grid{gap:1rem;grid-template-columns:1fr}.guide-card{padding:1.25rem}.guide-card-icon{height:44px;width:44px}.guide-card-icon i{font-size:1.125rem}.faq-controls{flex-direction:column}.faq-search{min-width:auto}.faq-filter select{width:100%}.faq-question-v2{flex-wrap:wrap;padding:1rem}.faq-category-badge{flex-basis:100%;margin-bottom:.5rem;order:-1}.faq-question-text{flex:1 1;order:1}.faq-question-v2>i{order:2}.pagination-btn{font-size:.8125rem;max-width:48%;padding:.75rem 1rem}.help-footer-card{flex-direction:column;padding:1.25rem;text-align:center}.help-footer-card>i{font-size:1.75rem}}@media (max-width:480px){.guide-content h2,.help-header-v2 h1{flex-direction:column;font-size:1.25rem;gap:.5rem}.guide-content h2{align-items:flex-start}.guide-content{padding:1.25rem}.guide-pagination{flex-direction:column}.pagination-btn{justify-content:center;max-width:none;width:100%}.pagination-btn.next,.pagination-btn.prev{margin:0}}[data-theme=dark] .help-header-v2{background:linear-gradient(135deg,#6366f140,#4f46e533);border:1px solid #6366f14d}[data-theme=dark] .guide-card:hover{box-shadow:0 8px 24px #00000040}[data-theme=dark] .faq-item-v2.expanded{box-shadow:0 4px 12px #0003}[data-theme=dark] .inline-code{background:#6366f126;border-color:#6366f140}@media print{.help-center-v2{max-width:none;padding:0}.help-header-v2{background:#6366f1!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.back-btn,.faq-controls,.guide-nav,.guide-pagination,.help-footer-v2,.help-tabs-v2{display:none!important}.faq-item-v2 .faq-answer-v2,.guide-detail-layout{display:block}}.system-settings{margin:0 auto;max-width:1000px}.section-header{border-bottom:2px solid #e5e7eb;border-bottom:2px solid var(--color-border-primary,#e5e7eb)}.section-header h2{font-size:1.875rem;font-weight:700}.header-actions{gap:.75rem}.btn-primary:disabled{background-color:#9ca3af;cursor:not-allowed}.btn-outline{border:1px solid var(--color-border-primary,#d1d5db);color:var(--color-text-secondary,#374151)}.btn-outline:hover{background-color:var(--color-surface-hover,#f9fafb)}.message{align-items:center;border-radius:8px;display:flex;font-weight:500;gap:.5rem;margin-bottom:1.5rem;padding:1rem 1.5rem}.message.success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.message.error{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.settings-sections{grid-gap:1.5rem;display:grid;gap:1.5rem}.settings-section{background:#fff;background:var(--color-surface-primary,#fff);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);border-radius:8px;padding:1.5rem}.settings-section h3{align-items:center;color:#111827;color:var(--color-text-primary,#111827);display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0 0 1.5rem}.setting-item{margin-bottom:1.5rem}.setting-item:last-child{margin-bottom:0}.setting-label{display:block;margin-bottom:.5rem}.setting-checkbox,.setting-label{color:#374151;color:var(--color-text-secondary,#374151);font-weight:500}.setting-checkbox{align-items:flex-start;cursor:pointer;display:flex;gap:.75rem}.setting-checkbox input[type=checkbox]{margin-top:.125rem;transform:scale(1.2)}.form-input{background-color:#fff;background-color:var(--color-surface-primary,#fff);border:1px solid var(--color-border-primary,#d1d5db)}.setting-item small{color:#6b7280;color:var(--color-text-tertiary,#6b7280);display:block;font-size:.75rem;margin-top:.25rem}.info-box{background-color:#f8fafc;background-color:var(--color-surface-secondary,#f8fafc);border:1px solid #e2e8f0;border:1px solid var(--color-border-primary,#e2e8f0);border-radius:6px;padding:1rem}.info-box code{background-color:#e2e8f0;background-color:var(--color-surface-tertiary,#e2e8f0);border-radius:3px;color:#111827;color:var(--color-text-primary,#111827);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8125rem;padding:.125rem .25rem}.card{background:var(--color-surface-primary,#fff);border:1px solid var(--color-border-primary,#e5e7eb)}.loading{color:#6b7280;color:var(--color-text-tertiary,#6b7280);gap:.75rem}@media (max-width:768px){.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.header-actions{justify-content:flex-end;width:100%}.system-settings{padding:0 1rem}}.user-management{max-width:1400px}.section-header h2{color:var(--color-text-primary,#111827)}.header-actions{gap:1rem}.users-table-container{background:#fff;background:var(--color-surface,#fff);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table td,.users-table th{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--color-border-primary,#e5e7eb);padding:1rem;text-align:left}.users-table th{color:#6b7280;color:var(--color-text-secondary,#6b7280);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.users-table tbody tr:hover,.users-table th{background:#f9fafb;background:var(--color-background-secondary,#f9fafb)}.users-table tbody tr.inactive-row{background:#f3f4f6;background:var(--color-background-tertiary,#f3f4f6);opacity:.6}.user-cell{gap:.75rem}.user-avatar-small,.user-cell{align-items:center;display:flex}.user-avatar-small{background:#dbeafe;background:var(--color-primary-100,#dbeafe);border-radius:50%;flex-shrink:0;height:36px;justify-content:center;width:36px}.user-avatar-small i{color:#2563eb;color:var(--color-primary-600,#2563eb);font-size:.875rem}.user-info-cell{display:flex;flex-direction:column;gap:2px}.user-name-cell{align-items:center;color:#111827;color:var(--color-text-primary,#111827);display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.user-email-cell{color:#9ca3af;color:var(--color-text-tertiary,#9ca3af);font-size:.75rem}.inactive-label{background:#fee2e2;border-radius:4px;color:#991b1b;font-size:.625rem;font-weight:500;padding:2px 6px;text-transform:uppercase}.client-badge{align-items:center;background:#f9fafb;background:var(--color-background-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);border-radius:4px;color:#6b7280;color:var(--color-text-secondary,#6b7280);display:inline-flex;font-size:.75rem;gap:.375rem;padding:.25rem .5rem}.client-badge i{font-size:.625rem}.client-badge i,.no-client{color:#9ca3af;color:var(--color-text-tertiary,#9ca3af)}.role-badge{border-radius:4px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.025em;padding:.25rem .625rem;text-transform:uppercase}.role-badge.role-user{background:#dbeafe;color:#1e40af}.role-badge.role-superuser{background:#fef3c7;color:#92400e}.role-badge.role-client{background:#d1fae5;color:#065f46}.status-badge{border-radius:4px;gap:.375rem;padding:.25rem .5rem}.status-badge i{font-size:.5rem}.status-badge.status-active{background:#10b9811a;color:#059669}.status-badge.status-active i{color:#10b981}.status-badge.status-inactive{background:#ef44441a;color:#dc2626}.status-badge.status-inactive i{color:#ef4444}.permissions-cell{display:flex;flex-wrap:wrap;gap:.25rem}.permission-badge{background:#f3f4f6;background:var(--color-background-secondary,#f3f4f6);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);border-radius:3px;color:#6b7280;color:var(--color-text-secondary,#6b7280);display:inline-block;font-size:.625rem;padding:2px 6px;text-transform:capitalize;white-space:nowrap}.permission-badge.permission-all{background:#8b5cf61a;border-color:#8b5cf64d;color:#7c3aed}.permission-badge.permission-more{background:#dbeafe;background:var(--color-primary-100,#dbeafe);border-color:#bfdbfe;border-color:var(--color-primary-200,#bfdbfe);color:#1d4ed8;color:var(--color-primary-700,#1d4ed8);cursor:help}.last-login{color:#9ca3af;color:var(--color-text-tertiary,#9ca3af);font-size:.75rem}.user-actions{display:flex;gap:.5rem}.btn-icon{align-items:center;border-radius:6px;display:flex;height:32px;justify-content:center;width:32px}.btn-sm{font-size:.875rem;padding:.375rem .75rem}.btn-outline{background:#0000;border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);color:#6b7280;color:var(--color-text-secondary,#6b7280)}.btn-outline:hover{background:#f9fafb;background:var(--color-background-secondary,#f9fafb);color:#111827;color:var(--color-text-primary,#111827)}.btn-danger{background:var(--color-danger,#ef4444);border:1px solid #ef4444;border:1px solid var(--color-danger,#ef4444)}.btn-danger:disabled{cursor:not-allowed;opacity:.5}.empty-state{color:#9ca3af;color:var(--color-text-tertiary,#9ca3af)}.empty-state h3{color:#111827;color:var(--color-text-primary,#111827);margin:0 0 .5rem}.empty-state p{margin:0}.loading{color:#9ca3af;color:var(--color-text-tertiary,#9ca3af);flex-direction:column;gap:1rem}.loading i{color:#3b82f6;color:var(--color-primary-500,#3b82f6);font-size:2rem}.error-message{background:#fee2e2;border:1px solid #f87171;border-radius:6px;color:#991b1b;margin-bottom:1.5rem}.modal-content{background:var(--color-surface,#fff);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-width:600px}.modal-header{border-bottom:1px solid var(--color-border-primary,#e5e7eb)}.modal-header h2{color:#111827;color:var(--color-text-primary,#111827)}.modal-close{align-items:center;color:#9ca3af;color:var(--color-text-tertiary,#9ca3af);display:flex;justify-content:center}.modal-close:hover{background:#f9fafb;background:var(--color-background-secondary,#f9fafb);color:#111827;color:var(--color-text-primary,#111827)}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group{margin-bottom:1.25rem}.form-group.full-width{grid-column:1/-1}.form-input,.form-label{color:#111827;color:var(--color-text-primary,#111827)}.form-input{background:var(--color-surface,#fff);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);transition:border-color .2s}.form-input:focus{border-color:var(--color-primary-500,#3b82f6)}.status-toggle{align-items:center;background:#f9fafb;background:var(--color-background-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);border-radius:6px;display:flex;gap:.75rem;padding:.75rem}.status-toggle label{align-items:center;color:#111827;color:var(--color-text-primary,#111827);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem}.status-toggle input[type=checkbox]{accent-color:#3b82f6;accent-color:var(--color-primary-500,#3b82f6);height:18px;width:18px}.status-toggle .status-text{font-weight:500}.status-toggle .status-text.active{color:#059669}.status-toggle .status-text.inactive{color:#dc2626}.permissions-section{background:#f9fafb;background:var(--color-background-secondary,#f9fafb);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);border-radius:8px;padding:1rem}.permissions-section h4{color:#111827;color:var(--color-text-primary,#111827);font-size:.875rem;margin:0 0 .75rem}.permissions-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr)}.permission-item{align-items:flex-start;background:#fff;background:var(--color-surface,#fff);border:1px solid #e5e7eb;border:1px solid var(--color-border-primary,#e5e7eb);border-radius:4px;display:flex;gap:.5rem;padding:.5rem}.permission-item input[type=checkbox]{accent-color:#3b82f6;accent-color:var(--color-primary-500,#3b82f6);height:16px;margin-top:2px;width:16px}.permission-item label{cursor:pointer;flex:1 1}.permission-item .permission-name{color:#111827;color:var(--color-text-primary,#111827);display:block;font-size:.75rem;font-weight:500}.permission-item .permission-desc{color:#9ca3af;color:var(--color-text-tertiary,#9ca3af);display:block;font-size:.625rem}.modal-actions{border-top:1px solid var(--color-border-primary,#e5e7eb);gap:1rem;margin-top:1rem;padding-top:1.5rem}.btn:disabled{opacity:.6}.btn-primary{background:var(--color-primary-500,#3b82f6)}.btn-primary:hover:not(:disabled){background:var(--color-primary-600,#2563eb)}.deactivation-warning{align-items:center;background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;color:#92400e;display:flex;font-size:.75rem;gap:.5rem;margin-top:.5rem;padding:.75rem}.deactivation-warning i{color:#f59e0b}.notification-logs{padding:0}.notification-logs .section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.notification-logs .section-header h2{align-items:center;color:var(--text-primary);display:flex;gap:.5rem;margin:0}.notification-logs .section-header h2 i{color:var(--primary-color)}.notification-logs .stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}@media (max-width:768px){.notification-logs .stats-grid{grid-template-columns:repeat(2,1fr)}}.notification-logs .stat-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:1rem;padding:1rem}.notification-logs .stat-icon{align-items:center;border-radius:10px;display:flex;font-size:1.25rem;height:48px;justify-content:center;width:48px}.notification-logs .stat-icon.sent{background:#10b9811a;color:#10b981}.notification-logs .stat-icon.pending{background:#f59e0b1a;color:#f59e0b}.notification-logs .stat-icon.failed{background:#ef44441a;color:#ef4444}.notification-logs .stat-icon.today{background:#3b82f61a;color:#3b82f6}.notification-logs .stat-content h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.notification-logs .stat-content p{color:var(--text-secondary);font-size:.875rem;margin:0}.notification-logs .filters-bar{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:1rem}.notification-logs .filter-group{display:flex;flex-direction:column;gap:.25rem}.notification-logs .filter-group label{color:var(--text-secondary);font-size:.75rem;font-weight:500;text-transform:uppercase}.notification-logs .filter-group select{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);min-width:140px;padding:.5rem .75rem}.notification-logs .table-container{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.notification-logs .logs-table{border-collapse:collapse;width:100%}.notification-logs .logs-table td,.notification-logs .logs-table th{border-bottom:1px solid var(--border-color);padding:.75rem 1rem;text-align:left}.notification-logs .logs-table th{background:var(--table-header-bg);color:var(--text-secondary);font-size:.75rem;font-weight:600;text-transform:uppercase}.notification-logs .logs-table tr:hover{background:var(--table-hover-bg)}.notification-logs .logs-table tr.failed-row{background:#ef44440d}.notification-logs .date-cell{color:var(--text-secondary);font-size:.875rem;white-space:nowrap}.notification-logs .recipient-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-logs .subject-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-logs .actions-cell{display:flex;gap:.5rem}.notification-logs .badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.notification-logs .badge-success{background:#10b9811a;color:#10b981}.notification-logs .badge-warning{background:#f59e0b1a;color:#f59e0b}.notification-logs .badge-danger{background:#ef44441a;color:#ef4444}.notification-logs .badge-info{background:#3b82f61a;color:#3b82f6}.notification-logs .badge-secondary{background:#6b72801a;color:#6b7280}.notification-logs .type-badge{border-radius:4px;color:#fff;display:inline-block;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.notification-logs .pagination{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:1rem;padding:1rem}.notification-logs .page-info{color:var(--text-secondary);font-size:.875rem}.notification-logs .empty-state{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:3rem;text-align:center}.notification-logs .empty-state i{color:var(--text-secondary);font-size:3rem;margin-bottom:1rem}.notification-logs .empty-state h3{color:var(--text-primary);margin:0 0 .5rem}.notification-logs .empty-state p{color:var(--text-secondary);margin:0}.notification-logs .loading{color:var(--text-secondary);padding:3rem;text-align:center}.notification-logs .loading i{margin-right:.5rem}.notification-logs .message{align-items:center;border-radius:6px;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.notification-logs .message.success{background:#10b9811a;border:1px solid #10b98133;color:#10b981}.notification-logs .message.error{background:#ef44441a;border:1px solid #ef444433;color:#ef4444}.notification-logs .message .close-btn{background:none;border:none;color:inherit;cursor:pointer;margin-left:auto;opacity:.7}.notification-logs .message .close-btn:hover{opacity:1}.notification-logs .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.notification-logs .modal-dialog{background:var(--card-bg);border-radius:12px;display:flex;flex-direction:column;max-height:90vh;max-width:700px;overflow:hidden;width:100%}.notification-logs .modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1rem 1.5rem}.notification-logs .modal-header h3{color:var(--text-primary);margin:0}.notification-logs .modal-header .close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.25rem}.notification-logs .modal-body{flex:1 1;overflow-y:auto;padding:1.5rem}.notification-logs .detail-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem}.notification-logs .detail-item{display:flex;flex-direction:column;gap:.25rem}.notification-logs .detail-item.full-width{grid-column:1/-1}.notification-logs .detail-item label{color:var(--text-secondary);font-size:.75rem;font-weight:500;text-transform:uppercase}.notification-logs .detail-item span{color:var(--text-primary)}.notification-logs .detail-item.error-detail span{background:#ef44441a;border-radius:4px;color:#ef4444;font-family:monospace;font-size:.875rem;padding:.5rem}.notification-logs .email-preview{border-top:1px solid var(--border-color);padding-top:1rem}.notification-logs .email-preview label{color:var(--text-secondary);display:block;font-size:.75rem;font-weight:500;margin-bottom:.5rem;text-transform:uppercase}.notification-logs .email-content{background:#fff;border:1px solid var(--border-color);border-radius:6px;max-height:400px;overflow-y:auto;padding:1rem}.notification-logs .modal-footer{border-top:1px solid var(--border-color);display:flex;gap:.5rem;justify-content:flex-end;padding:1rem 1.5rem}.notification-logs .btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.notification-logs .btn-sm{font-size:.875rem;padding:.25rem .5rem}.notification-logs .btn-primary{background:var(--primary-color);color:#fff}.notification-logs .btn-primary:hover{background:var(--primary-hover)}.notification-logs .btn-secondary{background:var(--secondary-color);color:var(--text-primary)}.notification-logs .btn-outline{background:#0000;border:1px solid var(--border-color);color:var(--text-primary)}.notification-logs .btn-outline:hover{background:var(--hover-bg)}.notification-logs .btn:disabled{cursor:not-allowed;opacity:.5}.scanner-capabilities{padding:1.5rem}.capabilities-header{margin-bottom:1.5rem}.capabilities-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.capabilities-header p{color:#6b7280;font-size:.875rem;margin:0}.capabilities-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem}.summary-stat{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:12px;color:#fff;padding:1.25rem;text-align:center}.summary-stat:nth-child(2){background:linear-gradient(135deg,#10b981,#059669)}.summary-stat:nth-child(3){background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.summary-stat:nth-child(4){background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-value{display:block;font-size:2rem;font-weight:700;margin-bottom:.25rem}.stat-label{font-size:.75rem;letter-spacing:.05em;opacity:.9;text-transform:uppercase}.capabilities-grid{display:flex;flex-direction:column;gap:2rem}.category-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.category-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;border-left:4px solid #3b82f6;display:flex;justify-content:space-between;padding:1rem 1.25rem}.category-header h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0}.engine-count{background:#e5e7eb;border-radius:12px;color:#6b7280;font-size:.75rem;padding:.25rem .75rem}.engines-list{display:flex;flex-direction:column}.engine-card{border-bottom:1px solid #f3f4f6;padding:1rem 1.25rem;transition:background .15s}.engine-card:last-child{border-bottom:none}.engine-card:hover{background:#f9fafb}.engine-header{align-items:flex-start;display:flex;gap:1rem;margin-bottom:.75rem}.engine-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:1rem;height:40px;justify-content:center;width:40px}.engine-info{flex:1 1;min-width:0}.engine-info h4{color:#1f2937;font-size:.9375rem;font-weight:600;margin:0 0 .25rem}.engine-info p{color:#6b7280;font-size:.8125rem;line-height:1.4;margin:0}.engine-status{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:.75rem;font-weight:500;gap:.375rem;padding:.25rem .625rem}.engine-status.enabled{background:#dcfce7;color:#166534}.engine-status.disabled{background:#fee2e2;color:#dc2626}.engine-checks{display:flex;flex-wrap:wrap;gap:.5rem;margin-left:52px}.check-tag{align-items:center;background:#f3f4f6;border-radius:4px;color:#374151;display:inline-flex;font-size:.6875rem;gap:.25rem;padding:.25rem .5rem}.check-tag i{color:#10b981;font-size:.5rem}.capabilities-footer{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:1.5rem}.footer-note{align-items:flex-start;background:#f9fafb;border-radius:8px;color:#6b7280;display:flex;font-size:.8125rem;gap:.75rem;padding:1rem}.footer-note i{color:#3b82f6;margin-top:.125rem}@media (max-width:768px){.capabilities-summary{grid-template-columns:repeat(2,1fr)}.engine-header{flex-wrap:wrap}.engine-status{justify-content:center;margin-top:.5rem;width:100%}.engine-checks{margin-left:0}}.active-exploits{padding:1.5rem}.exploits-header{margin-bottom:1.5rem}.exploits-header h2{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.exploits-header p{color:#6b7280;font-size:.875rem;margin:0}.exploits-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}.exploits-summary .summary-stat{border-radius:12px;color:#fff;padding:1.25rem;text-align:center}.exploits-summary .summary-stat.critical{background:linear-gradient(135deg,#dc2626,#b91c1c)}.exploits-summary .summary-stat.high{background:linear-gradient(135deg,#ea580c,#c2410c)}.exploits-summary .summary-stat.medium{background:linear-gradient(135deg,#d97706,#b45309)}.exploits-summary .summary-stat.info{background:linear-gradient(135deg,#3b82f6,#2563eb)}.exploits-summary .stat-value{display:block;font-size:2rem;font-weight:700;line-height:1;margin-bottom:.25rem}.exploits-summary .stat-label{font-size:.75rem;letter-spacing:.05em;opacity:.9;text-transform:uppercase}.exploits-filters{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.filter-search{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;margin-bottom:1rem;padding:.5rem 1rem}.filter-search i{color:#9ca3af;margin-right:.75rem}.filter-search input{border:none;color:#374151;flex:1 1;font-size:.875rem;outline:none}.filter-search input::placeholder{color:#9ca3af}.filter-categories{display:flex;flex-wrap:wrap;gap:.5rem}.category-btn{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:20px;color:#6b7280;cursor:pointer;display:inline-flex;font-size:.8125rem;gap:.5rem;padding:.5rem 1rem;transition:all .15s}.category-btn:hover{background:#f9fafb;border-color:#d1d5db}.category-btn.active{background:#3b82f6;background:var(--category-color,#3b82f6);border-color:#3b82f6;border-color:var(--category-color,#3b82f6);color:#fff}.category-btn .count{background:#0000001a;border-radius:10px;font-size:.6875rem;font-weight:600;padding:.125rem .5rem}.category-btn.active .count{background:#fff3}.exploits-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.exploit-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:box-shadow .15s,border-color .15s}.exploit-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000014}.exploit-header{align-items:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:.75rem 1rem}.exploit-severity{align-items:center;display:flex;gap:.5rem}.exploit-severity .severity-badge{border-radius:4px;font-size:.6875rem;font-weight:700;padding:.25rem .625rem;text-transform:uppercase}.exploit-severity .severity-critical{background:#dc2626;color:#fff}.exploit-severity .severity-high{background:#ea580c;color:#fff}.exploit-severity .severity-medium{background:#d97706;color:#fff}.cvss-score{background:#e5e7eb;color:#374151;font-size:.75rem;padding:.25rem .5rem}.cvss-score,.exploit-category{border-radius:4px;font-weight:600}.exploit-category{align-items:center;display:flex;font-size:.6875rem;gap:.375rem;padding:.25rem .625rem;text-transform:uppercase}.exploit-content{padding:1rem}.exploit-name{color:#1f2937;font-size:1rem;font-weight:600;line-height:1.3;margin:0 0 .5rem}.exploit-cve{align-items:center;display:flex;gap:.375rem;margin-bottom:.5rem}.exploit-cve i{color:#dc2626;font-size:.75rem}.exploit-cve a{color:#2563eb;font-size:.8125rem;font-weight:600;text-decoration:none}.exploit-cve a:hover{text-decoration:underline}.exploit-product{align-items:center;color:#6b7280;display:flex;font-size:.8125rem;gap:.375rem;margin:0 0 .75rem}.exploit-product i{color:#9ca3af;font-size:.75rem}.exploit-description{color:#374151;font-size:.8125rem;line-height:1.5;margin:0 0 .75rem}.exploit-detection{color:#6b7280;font-size:.75rem;line-height:1.4;margin-bottom:.375rem}.exploit-detection strong{color:#374151}.exploit-ports{color:#6b7280;font-size:.75rem;line-height:1.4}.exploit-ports strong{color:#374151}.exploit-tags{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:.375rem;padding:.75rem 1rem}.exploit-tags .tag{background:#e5e7eb;border-radius:3px;color:#374151;font-size:.625rem;font-weight:500;padding:.25rem .5rem;text-transform:uppercase}.exploits-footer{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:1.5rem}.exploits-footer .footer-note{align-items:flex-start;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;color:#6b7280;display:flex;font-size:.8125rem;gap:.75rem;padding:1rem}.exploits-footer .footer-note i{color:#d97706;margin-top:.125rem}@media (max-width:900px){.exploits-summary{grid-template-columns:repeat(2,1fr)}.exploits-list{grid-template-columns:1fr}}@media (max-width:600px){.exploits-summary{grid-template-columns:1fr}.filter-categories{flex-direction:column}.category-btn{justify-content:center}}.admin{margin:0 auto;max-width:1200px;padding:2rem}.admin-header{border-bottom:2px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1rem}.admin-header h1{color:#111827;font-size:2.25rem;font-weight:700;margin:0 0 .5rem}.admin-header p{color:#6b7280;font-size:1.125rem;margin:0}.admin-content{display:flex;flex-direction:column;gap:0}.admin-tabs{border-bottom:2px solid #e5e7eb;margin-bottom:2rem}.admin-tabs,.tab{display:flex;gap:.5rem}.tab{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;font-size:.9375rem;font-weight:500;padding:.875rem 1.5rem;transition:all .2s ease}.tab:hover{background-color:#f8fafc;color:#3b82f6}.tab.active{background-color:#eff6ff;border-bottom-color:#3b82f6;color:#3b82f6}.admin-panel{min-height:500px}.section-header{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1rem}.section-header h2{align-items:center;color:#111827;display:flex;font-size:1.5rem;font-weight:600;margin:0}.btn-primary:hover:not(:disabled){background-color:#2563eb}.btn-outline{background-color:initial;border:1px solid #d1d5db}.btn-outline:hover{background-color:#f9fafb}.stats-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a;display:flex;gap:1rem;padding:1.5rem}.stat-icon{background-color:#dbeafe;border-radius:50%;color:#3b82f6;font-size:1.25rem;height:48px;width:48px}.stat-icon.active{background-color:#dcfce7;color:#16a34a}.stat-icon.admin{background-color:#fef3c7;color:#d97706}.stat-content{flex:1 1}.stat-number{color:#111827;font-size:2rem;font-weight:700;line-height:1}.stat-label{color:#6b7280;font-size:.875rem;margin-top:.25rem}.placeholder-content{align-items:center;display:flex;justify-content:center}.placeholder-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;max-width:600px;padding:3rem;text-align:center;width:100%}.placeholder-card h3{color:#111827;font-size:1.5rem;margin:0 0 1rem}.placeholder-card p{color:#6b7280;font-size:1.125rem;margin-bottom:2rem}.feature-list{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;text-align:left}.feature-list h4{color:#374151;font-size:1.125rem;margin:0 0 1rem}.feature-list ul{list-style:none;margin:0;padding:0}.feature-list li{align-items:center;color:#6b7280;display:flex;gap:.75rem;padding:.5rem 0}.feature-list li i{color:#3b82f6;width:16px}.info-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:2rem}.info-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.info-card:hover{box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-2px)}.info-header{gap:.75rem;margin-bottom:1rem}.info-header,.info-header i{align-items:center;display:flex}.info-header i{color:#3b82f6;font-size:1.125rem;height:24px;justify-content:center;width:24px}.info-header h3{color:#374151;font-size:1rem;font-weight:600;margin:0}.info-value{color:#111827;font-size:1.5rem;font-weight:700;line-height:1.2;margin:0 0 .5rem}.info-value.status-connected,.info-value.status-healthy{color:#16a34a}.info-card small{color:#6b7280;font-size:.875rem}.health-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a;padding:1.5rem}.health-section h3{align-items:center;color:#111827;display:flex;font-size:1.25rem;font-weight:600;gap:.5rem;margin:0 0 1.5rem}.health-indicators{grid-gap:1rem;display:grid;gap:1rem}.health-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;gap:1rem;padding:1rem}.health-icon,.health-item{align-items:center;display:flex}.health-icon{border-radius:50%;flex-shrink:0;font-size:1.125rem;height:40px;justify-content:center;width:40px}.health-icon.healthy{background-color:#dcfce7;color:#16a34a}.health-icon.warning{background-color:#fef3c7;color:#d97706}.health-icon.error{background-color:#fee2e2;color:#dc2626}.health-content{flex:1 1}.health-title{color:#374151;font-weight:600;margin-bottom:.25rem}.health-status{color:#6b7280;font-size:.875rem}@media (max-width:768px){.admin{padding:1rem}.admin-tabs{flex-direction:column;gap:0}.tab{border-bottom:1px solid #e5e7eb;border-radius:0;justify-content:flex-start}.tab.active{border-bottom-color:#3b82f6;border-left:3px solid #3b82f6}.info-grid,.stats-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.placeholder-card{padding:2rem 1.5rem}}.login-container{align-items:center;background:linear-gradient(135deg,var(--color-background) 0,var(--color-background-secondary) 50%,var(--color-background-tertiary) 100%);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:var(--space-4);position:relative}.login-container:before{background:radial-gradient(circle at 20% 80%,#3b82f61a 0,#0000 50%),radial-gradient(circle at 80% 20%,#3b82f60d 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.login-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-2xl);box-shadow:var(--shadow-dark-xl);max-width:420px;padding:var(--space-8);position:relative;transition:all var(--transition-base);width:100%}.login-card:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-dark-xl),0 0 40px #3b82f61a}.login-header{margin-bottom:var(--space-8);text-align:center}.login-icon{background:#3b82f61a;border:2px solid #3b82f633;border-radius:var(--radius-full);color:var(--color-primary-400);display:inline-block;font-size:var(--font-size-5xl);margin-bottom:var(--space-4);padding:var(--space-4)}.login-header h1{color:var(--color-text-primary);font-family:var(--font-family-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);letter-spacing:-.025em;margin:0;margin-bottom:var(--space-2)}.login-header p{color:var(--color-text-tertiary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-relaxed);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--space-6)}.input-group{position:relative}.input-group label{color:var(--color-text-primary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.input-icon{color:var(--color-text-muted);font-size:var(--font-size-base);left:var(--space-3);position:absolute;top:50%;transform:translateY(-50%);transition:color var(--transition-fast);z-index:1}.input-group .form-input{background:var(--color-background-secondary);border:1px solid var(--color-border-primary);font-size:var(--font-size-base);height:var(--button-height-lg);padding-left:var(--space-10);transition:all var(--transition-fast)}.input-group .form-input:focus{background:var(--color-surface);border-color:var(--color-border-focus);box-shadow:0 0 0 3px #3b82f61a}.input-group .form-input:focus+.input-icon{color:var(--color-primary-400)}.btn-full{background:linear-gradient(135deg,var(--color-primary-600) 0,var(--color-primary-700) 100%);border:1px solid var(--color-primary-600);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);height:var(--button-height-lg);letter-spacing:.05em;padding:0 var(--space-6);text-transform:uppercase;transition:all var(--transition-fast);width:100%}.btn-full:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-700) 0,var(--color-primary-800) 100%);border-color:var(--color-primary-700);box-shadow:var(--shadow-base);transform:translateY(-1px)}.btn-full:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-full:disabled{cursor:not-allowed;opacity:.6;transform:none}.error-message{align-items:flex-start;background:#dc26261a;border:1px solid #dc26264d;border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--font-size-sm);gap:var(--space-3);line-height:var(--line-height-relaxed);padding:var(--space-4)}.error-message i{color:#fca5a5;flex-shrink:0;font-size:var(--font-size-base);margin-top:2px}.login-footer{border-top:1px solid var(--color-border-primary);margin-top:var(--space-8);padding-top:var(--space-6);text-align:center}.login-footer p{color:var(--color-text-muted);font-size:var(--font-size-xs);line-height:var(--line-height-relaxed);margin:0}.loading-container{background:var(--color-background);gap:var(--space-6);min-height:100vh;padding:var(--space-8)}.loading-container .loading-spinner{animation:spin 1s linear infinite;border:4px solid var(--color-border-primary);border-radius:50%;border-top-color:var(--color-primary-500);height:64px;width:64px}.loading-container .loading-text{color:var(--color-text-tertiary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);text-align:center}.access-denied{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);display:flex;flex-direction:column;gap:var(--space-6);justify-content:center;margin:var(--space-8);min-height:50vh;padding:var(--space-8);text-align:center}.access-denied i{background:#dc26261a;border:2px solid #dc262633;border-radius:var(--radius-full);color:#fca5a5;font-size:var(--font-size-5xl);padding:var(--space-4)}.access-denied h2{color:var(--color-text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0}.access-denied p{color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin:0;max-width:400px}.security-badge{align-items:center;background:#0596691a;border:1px solid #0596694d;border-radius:var(--radius-full);color:#6ee7b7;display:flex;font-weight:var(--font-weight-medium);gap:var(--space-1);letter-spacing:.05em;padding:var(--space-1) var(--space-2);position:absolute;right:var(--space-4);text-transform:uppercase;top:var(--space-4)}.security-badge,.security-badge i{font-size:var(--font-size-xs)}@media (max-width:480px){.login-container{padding:var(--space-2)}.login-card{border-radius:var(--radius-xl);padding:var(--space-6)}.login-icon{font-size:var(--font-size-4xl);padding:var(--space-3)}.login-header h1{font-size:var(--font-size-2xl)}.login-header p{font-size:var(--font-size-sm)}.btn-full,.input-group .form-input{font-size:var(--font-size-sm);height:var(--button-height-base)}}@media (prefers-contrast:high){.login-card{border-color:var(--color-text-primary);border-width:2px}.btn-full,.input-group .form-input{border-width:2px}}:root{--radius-sm:0.25rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-base:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--shadow-dark-xl:0 25px 50px -12px #00000040;--transition-fast:150ms ease-in-out;--transition-base:200ms ease-in-out;--transition-slow:300ms ease-in-out;--font-family-primary:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-display:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-mono:"SF Mono",Monaco,Inconsolata,"Roboto Mono","Source Code Pro",monospace;--sidebar-width-collapsed:80px}.theme-light,:root,[data-theme=light]{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-success:#10b981;--color-success-light:#d1fae5;--color-success-dark:#047857;--color-warning:#f59e0b;--color-warning-light:#fef3c7;--color-warning-dark:#d97706;--color-error:#ef4444;--color-error-light:#fecaca;--color-error-dark:#dc2626;--color-info:#3b82f6;--color-info-light:#dbeafe;--color-info-dark:#1d4ed8;--color-background:#fff;--color-background-secondary:#f9fafb;--color-background-tertiary:#f3f4f6;--color-surface:#fff;--color-surface-secondary:#f9fafb;--color-surface-tertiary:#f3f4f6;--color-surface-hover:#f3f4f6;--color-surface-active:#e5e7eb;--color-border-primary:#e5e7eb;--color-border-secondary:#d1d5db;--color-border-tertiary:#9ca3af;--color-border-focus:#3b82f6;--color-border-error:#ef4444;--color-border-success:#10b981;--color-border-warning:#f59e0b;--color-text-primary:#111827;--color-text-secondary:#374151;--color-text-tertiary:#6b7280;--color-text-muted:#9ca3af;--color-text-inverse:#fff;--color-text-link:#3b82f6;--color-text-link-hover:#1d4ed8;--color-card-background:#fff;--color-card-border:#e5e7eb;--color-card-title:#111827;--color-card-subtitle:#6b7280;--color-card-hover-border:#d1d5db;--color-card-shadow:#0000001a;--color-card-shadow-hover:#00000026}.theme-dark,[data-theme=dark]{--color-primary-50:#1e3a8a;--color-primary-100:#1e40af;--color-primary-200:#1d4ed8;--color-primary-300:#2563eb;--color-primary-400:#3b82f6;--color-primary-500:#60a5fa;--color-primary-600:#93c5fd;--color-primary-700:#bfdbfe;--color-primary-800:#dbeafe;--color-primary-900:#eff6ff;--color-gray-50:#111827;--color-gray-100:#1f2937;--color-gray-200:#374151;--color-gray-300:#4b5563;--color-gray-400:#6b7280;--color-gray-500:#9ca3af;--color-gray-600:#d1d5db;--color-gray-700:#e5e7eb;--color-gray-800:#f3f4f6;--color-gray-900:#f9fafb;--color-success:#34d399;--color-success-light:#064e3b;--color-success-dark:#6ee7b7;--color-warning:#fbbf24;--color-warning-light:#78350f;--color-warning-dark:#fcd34d;--color-error:#f87171;--color-error-light:#7f1d1d;--color-error-dark:#fca5a5;--color-info:#60a5fa;--color-info-light:#1e3a8a;--color-info-dark:#93c5fd;--color-background:#0f172a;--color-background-secondary:#1e293b;--color-background-tertiary:#334155;--color-surface:#1e293b;--color-surface-secondary:#334155;--color-surface-tertiary:#475569;--color-surface-hover:#334155;--color-surface-active:#475569;--color-border-primary:#334155;--color-border-secondary:#475569;--color-border-tertiary:#64748b;--color-border-focus:#60a5fa;--color-border-error:#f87171;--color-border-success:#34d399;--color-border-warning:#fbbf24;--color-text-primary:#f8fafc;--color-text-secondary:#e2e8f0;--color-text-tertiary:#cbd5e1;--color-text-muted:#94a3b8;--color-text-inverse:#0f172a;--color-text-link:#60a5fa;--color-text-link-hover:#93c5fd;--color-card-background:#1e293b;--color-card-border:#334155;--color-card-title:#f8fafc;--color-card-subtitle:#cbd5e1;--color-card-hover-border:#475569;--color-card-shadow:#0000004d;--color-card-shadow-hover:#0006;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-base:0 1px 3px 0 #0006,0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006,0 2px 4px -1px #0000004d;--shadow-lg:0 10px 15px -3px #0006,0 4px 6px -2px #0000004d;--shadow-xl:0 20px 25px -5px #0006,0 10px 10px -5px #0000004d;--shadow-dark-xl:0 25px 50px -12px #00000080}*{transition:background-color .2s ease-in-out,border-color .2s ease-in-out,color .2s ease-in-out,box-shadow .2s ease-in-out;transition:background-color var(--transition-base),border-color var(--transition-base),color var(--transition-base),box-shadow var(--transition-base)}.theme-switching *{transition:none!important}@media (prefers-contrast:high){:root{--color-border-primary:#000;--color-text-primary:#000}[data-theme=dark]{--color-border-primary:#fff;--color-text-primary:#fff}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.theme-light-only{display:block}.theme-dark-only,[data-theme=dark] .theme-light-only{display:none}[data-theme=dark] .theme-dark-only{display:block}.App{min-height:100vh;text-align:left}.App,body{background-color:#f8fafc}.loading{color:#3b82f6;min-height:200px}.error{background-color:#fee2e2;border:1px solid #f87171;border-radius:6px}.error,.success{margin:16px 0;padding:12px}.success{background-color:#d1fae5;border:1px solid #34d399;border-radius:6px;color:#059669}.btn{border:none;font-size:14px;gap:8px;padding:8px 16px;transition:all .2s ease}.btn-primary{background-color:#3b82f6}.btn-primary:hover{background-color:#2563eb}.btn-secondary{background-color:#6b7280}.btn-secondary:hover{background-color:#4b5563}.btn-success{background-color:#059669}.btn-success:hover{background-color:#047857}.btn-danger{background-color:#dc2626}.btn-danger:hover{background-color:#b91c1c}.card{box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;margin-bottom:24px;padding:24px}.card-header{border-bottom:1px solid #e5e7eb;margin-bottom:16px;padding-bottom:16px}.card-title{color:#111827;font-size:18px;font-weight:600}.form-group{margin-bottom:16px}.form-label{display:block;font-size:14px;margin-bottom:6px}.form-input,.form-textarea{font-size:14px;padding:8px 12px;transition:border-color .2s ease;width:100%}.form-textarea{border:1px solid #d1d5db;border-radius:6px;min-height:100px}.form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.table{background:#fff;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a;overflow:hidden}.table th{background-color:#f9fafb;color:#374151;font-weight:600}.table td,.table th{border-bottom:1px solid #e5e7eb;padding:12px}.table tbody tr:hover{background-color:#f9fafb}.badge{border-radius:4px;font-size:12px;font-weight:500;padding:4px 8px}.badge-success{background-color:#d1fae5;color:#059669}.badge-warning{background-color:#fef3c7;color:#d97706}.badge-danger{background-color:#fee2e2;color:#dc2626}.badge-info{background-color:#dbeafe;color:#3b82f6}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.ml-2{margin-left:8px}.mr-2{margin-right:8px}.p-4{padding:16px}.gap-2{gap:8px}.gap-4{gap:16px}:root{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-primary-950:#172554;--color-critical:#dc2626;--color-critical-bg:#fef2f2;--color-critical-border:#fecaca;--color-critical-dark:#991b1b;--color-high:#ea580c;--color-high-bg:#fff7ed;--color-high-border:#fed7aa;--color-high-dark:#c2410c;--color-medium:#d97706;--color-medium-bg:#fffbeb;--color-medium-border:#fde68a;--color-medium-dark:#92400e;--color-low:#059669;--color-low-bg:#ecfdf5;--color-low-border:#a7f3d0;--color-low-dark:#047857;--color-info:#0891b2;--color-info-bg:#f0f9ff;--color-info-border:#7dd3fc;--color-info-dark:#0e7490;--color-success:#16a34a;--color-success-bg:#f0fdf4;--color-success-border:#bbf7d0;--color-success-dark:#15803d;--color-warning:#f59e0b;--color-warning-bg:#fffbeb;--color-warning-border:#fde68a;--color-warning-dark:#d97706;--color-error:#dc2626;--color-error-bg:#fef2f2;--color-error-border:#fecaca;--color-error-dark:#991b1b;--color-background:#0f172a;--color-background-secondary:#1e293b;--color-background-tertiary:#334155;--color-surface:#1e293b;--color-surface-elevated:#334155;--color-surface-hover:#475569;--color-text-primary:#f8fafc;--color-text-secondary:#cbd5e1;--color-text-tertiary:#94a3b8;--color-text-muted:#64748b;--color-text-inverse:#0f172a;--color-border-primary:#334155;--color-border-secondary:#475569;--color-border-focus:#3b82f6;--color-border-error:#dc2626;--color-border-success:#16a34a;--text-dark:var(--color-text-primary);--text-light:var(--color-text-secondary);--bg-light:var(--color-surface-elevated);--light-blue:#3b82f61a;--primary-blue:var(--color-primary-500);--success-green:var(--color-success);--background:var(--color-background);--border:var(--color-border-primary);--font-family-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto",sans-serif;--font-family-mono:"JetBrains Mono","Fira Code","Monaco","Consolas",monospace;--font-family-display:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto",sans-serif;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--radius-none:0;--radius-sm:0.125rem;--radius-base:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-base:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-md:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-lg:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-xl:0 25px 50px -12px #00000040;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-inner:inset 0 2px 4px 0 #0000000d;--shadow-dark-sm:0 1px 3px 0 #0000004d,0 1px 2px -1px #0000004d;--shadow-dark-base:0 4px 6px -1px #0000004d,0 2px 4px -2px #0000004d;--shadow-dark-md:0 10px 15px -3px #0000004d,0 4px 6px -4px #0000004d;--shadow-dark-lg:0 20px 25px -5px #0006,0 8px 10px -6px #0006;--transition-fast:150ms ease;--transition-base:200ms ease;--transition-slow:300ms ease;--transition-slower:500ms ease;--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080;--sidebar-width:280px;--sidebar-width-collapsed:64px;--header-height:64px;--card-padding:var(--space-6);--card-radius:var(--radius-lg);--card-shadow:var(--shadow-dark-sm);--button-height-sm:32px;--button-height-base:40px;--button-height-lg:48px;--button-padding-x-sm:var(--space-3);--button-padding-x-base:var(--space-4);--button-padding-x-lg:var(--space-6);--input-height:40px;--input-padding-x:var(--space-3);--input-border-width:1px;--input-radius:var(--radius-md);--table-row-height:48px;--table-header-height:56px;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px}[data-theme=light]{--color-background:#fff;--color-background-secondary:#f8fafc;--color-background-tertiary:#f1f5f9;--color-surface:#fff;--color-surface-elevated:#f8fafc;--color-surface-hover:#f1f5f9;--color-text-primary:#0f172a;--color-text-secondary:#334155;--color-text-tertiary:#475569;--color-text-muted:#64748b;--color-text-inverse:#f8fafc;--color-border-primary:#e2e8f0;--color-border-secondary:#cbd5e1;--color-border-focus:#3b82f6;--color-border-error:#dc2626;--color-border-success:#16a34a;--text-dark:var(--color-text-primary);--text-light:var(--color-text-secondary);--bg-light:var(--color-surface-elevated);--light-blue:#3b82f61a;--primary-blue:var(--color-primary-500);--success-green:var(--color-success);--background:var(--color-background);--border:var(--color-border-primary);--shadow-dark-sm:var(--shadow-sm);--shadow-dark-base:var(--shadow-base);--shadow-dark-md:var(--shadow-md);--shadow-dark-lg:var(--shadow-lg);--card-shadow:var(--shadow-sm);--color-critical-bg:#fef2f2;--color-critical-border:#fecaca;--color-high-bg:#fff7ed;--color-high-border:#fed7aa;--color-medium-bg:#fffbeb;--color-medium-border:#fde68a;--color-low-bg:#ecfdf5;--color-low-border:#a7f3d0;--color-info-bg:#f0f9ff;--color-info-border:#7dd3fc;--color-success-bg:#f0fdf4;--color-success-border:#bbf7d0;--color-warning-bg:#fffbeb;--color-warning-border:#fde68a;--color-error-bg:#fef2f2;--color-error-border:#fecaca}[data-theme=light] ::-webkit-scrollbar-track{background:#1e293b;background:var(--color-background-secondary)}[data-theme=light] ::-webkit-scrollbar-thumb{background:#475569;background:var(--color-border-secondary)}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--color-text-tertiary)}[data-theme=light] *{scrollbar-color:#475569 #1e293b;scrollbar-color:var(--color-border-secondary) var(--color-background-secondary)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;text-rendering:optimizeLegibility}body,html{line-height:1.5;line-height:var(--line-height-normal)}body{background-color:#0f172a;background-color:var(--color-background);color:#f8fafc;color:var(--color-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-family-primary);font-size:1rem;font-size:var(--font-size-base);font-weight:400;font-weight:var(--font-weight-normal);overflow-x:hidden}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#1e293b;background:var(--color-background-secondary)}::-webkit-scrollbar-thumb{background:#475569;background:var(--color-border-secondary);border-radius:9999px;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--color-text-tertiary)}*{scrollbar-color:#475569 #1e293b;scrollbar-color:var(--color-border-secondary) var(--color-background-secondary);scrollbar-width:thin}:focus{outline:2px solid #3b82f6;outline:2px solid var(--color-border-focus);outline-offset:2px}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid #3b82f6;outline:2px solid var(--color-border-focus);outline-offset:2px}::selection{background-color:#2563eb;background-color:var(--color-primary-600);color:#f8fafc;color:var(--color-text-primary)}::-moz-selection{background-color:#2563eb;background-color:var(--color-primary-600);color:#f8fafc;color:var(--color-text-primary)}.heading-1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}.heading-1,.heading-2{color:var(--color-text-primary);font-family:var(--font-family-display);letter-spacing:-.025em;line-height:var(--line-height-tight)}.heading-2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold)}.heading-3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold)}.heading-3,.heading-4{color:var(--color-text-primary);font-family:var(--font-family-display);line-height:var(--line-height-snug)}.heading-4{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium)}.heading-5{font-size:var(--font-size-lg)}.heading-5,.heading-6{color:var(--color-text-primary);font-family:var(--font-family-display);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal)}.heading-6{letter-spacing:.05em;text-transform:uppercase}.heading-6,.text-body{font-size:var(--font-size-base)}.text-body{color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.text-small{color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.text-small,.text-xs{line-height:var(--line-height-normal)}.text-xs{color:var(--color-text-muted);font-size:var(--font-size-xs)}.text-mono{background:var(--color-background-secondary);border-radius:var(--radius-base);font-family:var(--font-family-mono);font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2)}.card,.text-mono{border:1px solid var(--color-border-primary)}.card{background:var(--color-surface);border-radius:var(--card-radius);box-shadow:var(--card-shadow);overflow:hidden;transition:all var(--transition-base)}.card:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-dark-base)}.card-header{background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-primary);padding:var(--space-6)}.card-title{align-items:center;color:var(--color-text-primary);display:flex;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);gap:var(--space-2);margin:0}.card-subtitle{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin:var(--space-1) 0 0 0}.card-body{padding:var(--card-padding)}.card-footer{align-items:center;background:var(--color-background-secondary);border-top:1px solid var(--color-border-primary);display:flex;justify-content:space-between;padding:var(--space-4) var(--space-6)}.card-elevated{box-shadow:var(--shadow-dark-md)}.card-elevated:hover{box-shadow:var(--shadow-dark-lg);transform:translateY(-2px)}.btn{border-radius:var(--radius-md);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-2);height:var(--button-height-base);line-height:1;overflow:hidden;padding:0 var(--button-padding-x-base);position:relative;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.btn:disabled{pointer-events:none}.btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn-primary{background:linear-gradient(135deg,var(--color-primary-600) 0,var(--color-primary-700) 100%);border-color:var(--color-primary-600);box-shadow:var(--shadow-sm);color:var(--color-text-primary)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-700) 0,var(--color-primary-800) 100%);border-color:var(--color-primary-700);box-shadow:var(--shadow-base);transform:translateY(-1px)}.btn-secondary{background:var(--color-surface);border-color:var(--color-border-secondary);color:var(--color-text-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-focus)}.btn-success{background:linear-gradient(135deg,var(--color-success) 0,var(--color-success-dark) 100%);border-color:var(--color-success);color:var(--color-text-primary)}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,var(--color-success-dark) 0,#166534 100%);transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,var(--color-error) 0,var(--color-error-dark) 100%);border-color:var(--color-error);color:var(--color-text-primary)}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,var(--color-error-dark) 0,#7f1d1d 100%);transform:translateY(-1px)}.btn-warning{background:linear-gradient(135deg,var(--color-warning) 0,var(--color-warning-dark) 100%);border-color:var(--color-warning);color:var(--color-text-inverse)}.btn-warning:hover:not(:disabled){background:linear-gradient(135deg,var(--color-warning-dark) 0,#a16207 100%);transform:translateY(-1px)}.btn-ghost{background:#0000;border-color:#0000;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text-primary)}.btn-sm{font-size:var(--font-size-xs);height:var(--button-height-sm);padding:0 var(--button-padding-x-sm)}.btn-lg{font-size:var(--font-size-base);height:var(--button-height-lg);padding:0 var(--button-padding-x-lg)}.btn-icon{padding:0;width:var(--button-height-base)}.btn-icon.btn-sm{width:var(--button-height-sm)}.btn-icon.btn-lg{width:var(--button-height-lg)}.form-group{gap:var(--space-2);margin-bottom:var(--space-4)}.form-label{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal)}.form-label.required:after{color:var(--color-error);content:" *"}.form-input,.form-select,.form-textarea{background:var(--color-surface);border:var(--input-border-width) solid var(--color-border-primary);border-radius:var(--input-radius);color:var(--color-text-primary);font-family:var(--font-family-primary);font-size:var(--font-size-sm);height:var(--input-height);padding:0 var(--input-padding-x);transition:all var(--transition-fast)}.form-textarea{height:auto;min-height:80px;padding:var(--space-3) var(--input-padding-x);resize:vertical}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--color-background-secondary);cursor:not-allowed;opacity:.5}.form-error,.form-error:focus{border-color:var(--color-border-error)}.form-error:focus{box-shadow:0 0 0 3px #dc26261a}.form-help{color:var(--color-text-muted)}.form-error-message,.form-help{font-size:var(--font-size-xs);line-height:var(--line-height-normal)}.form-error-message{align-items:center;color:var(--color-error);display:flex;gap:var(--space-1)}.form-checkbox,.form-radio{align-items:center;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:var(--font-size-sm);gap:var(--space-2)}.form-checkbox input[type=checkbox],.form-radio input[type=radio]{cursor:pointer;height:16px;margin:0;width:16px}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);gap:var(--space-1);letter-spacing:.05em;line-height:1;padding:var(--space-1) var(--space-2);text-transform:uppercase}.badge-critical{background:var(--color-critical-bg);border:1px solid var(--color-critical-border);color:var(--color-critical-dark)}.badge-high{background:var(--color-high-bg);border:1px solid var(--color-high-border);color:var(--color-high-dark)}.badge-medium{background:var(--color-medium-bg);border:1px solid var(--color-medium-border);color:var(--color-medium-dark)}.badge-low{background:var(--color-low-bg);border:1px solid var(--color-low-border);color:var(--color-low-dark)}.badge-info{background:var(--color-info-bg);border:1px solid var(--color-info-border);color:var(--color-info-dark)}.badge-success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success-dark)}.badge-warning{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning-dark)}.badge-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error-dark)}.badge-critical-dark{background:#dc26261a;border:1px solid #dc26264d;color:#fca5a5}.badge-high-dark{background:#ea580c1a;border:1px solid #ea580c4d;color:#fdba74}.badge-medium-dark{background:#d977061a;border:1px solid #d977064d;color:#fcd34d}.badge-low-dark{background:#0596691a;border:1px solid #0596694d;color:#6ee7b7}.badge-info-dark{background:#0891b21a;border:1px solid #0891b24d;color:#67e8f9}.loading-spinner{animation:spin 1s ease-in-out infinite}.skeleton{animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.alert{align-items:flex-start;border:1px solid;border-radius:var(--radius-lg);display:flex;font-size:var(--font-size-sm);gap:var(--space-3);line-height:var(--line-height-relaxed);padding:var(--space-4)}.alert-icon{flex-shrink:0;height:20px;margin-top:2px;width:20px}.alert-content{flex:1 1}.alert-title{margin-bottom:var(--space-1)}.alert-success{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-dark)}.alert-warning{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning-dark)}.alert-error{background:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error-dark)}.alert-info{background:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-info-dark)}.alert-success-dark{background:#0596691a;border-color:#0596694d;color:var(--color-text-primary)}.alert-warning-dark{background:#f59e0b1a;border-color:#f59e0b4d;color:var(--color-text-primary)}.alert-error-dark{background:#dc26261a;border-color:#dc26264d;color:var(--color-text-primary)}.alert-info-dark{background:#0891b21a;border-color:#0891b24d;color:var(--color-text-primary)}.table-container{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);overflow:hidden}.table{border-collapse:collapse;font-size:var(--font-size-sm);width:100%}.table th{background:var(--color-background-secondary);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);height:var(--table-header-height);text-align:left;white-space:nowrap}.table td,.table th{border-bottom:1px solid var(--color-border-primary);padding:0 var(--space-4)}.table td{color:var(--color-text-secondary);height:var(--table-row-height);vertical-align:middle}.table tbody tr:hover{background:var(--color-surface-hover)}.table tbody tr:last-child td{border-bottom:none}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;padding:var(--space-4);z-index:var(--z-modal-backdrop)}.modal-content{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-dark-xl);display:flex;flex-direction:column;overflow:hidden}.modal-header{background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-primary);padding:var(--space-6)}.modal-title{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin:0}.modal-close,.modal-title{font-size:var(--font-size-lg)}.modal-close{border-radius:var(--radius-base);color:var(--color-text-tertiary);padding:var(--space-2);transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.modal-body{flex:1 1;overflow-y:auto;padding:var(--space-6)}.modal-footer{background:var(--color-background-secondary);border-top:1px solid var(--color-border-primary);display:flex;gap:var(--space-3);justify-content:flex-end;padding:var(--space-6)}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;padding:0;position:absolute;width:1px}.sr-only,.truncate{overflow:hidden;white-space:nowrap}.truncate{text-overflow:ellipsis}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.flex-row{flex-direction:row}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.min-h-screen{min-height:100vh}.p-2{padding:var(--space-2)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.m-0{margin:0}.m-2{margin:var(--space-2)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-dark-base)}.shadow-lg{box-shadow:var(--shadow-dark-md)}.shadow-xl{box-shadow:var(--shadow-dark-lg)}.border{border:1px solid var(--color-border-primary)}.border-t{border-top:1px solid var(--color-border-primary)}.border-b{border-bottom:1px solid var(--color-border-primary)}.border-l{border-left:1px solid var(--color-border-primary)}.border-r{border-right:1px solid var(--color-border-primary)}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.transition{transition:all var(--transition-base)}.transition-fast{transition:all var(--transition-fast)}.transition-slow{transition:all var(--transition-slow)}.app-layout{background:var(--color-background);overflow:hidden}.app-layout,.sidebar{display:flex;height:100vh}.sidebar{background:linear-gradient(180deg,var(--color-background-secondary) 0,var(--color-background-tertiary) 100%);border-right:1px solid var(--color-border-primary);box-shadow:var(--shadow-dark-lg);flex-direction:column;left:0;position:fixed;top:0;transition:all var(--transition-base);width:var(--sidebar-width);z-index:var(--z-fixed)}.sidebar.collapsed{width:var(--sidebar-width-collapsed)}.sidebar-header{background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-primary);padding:var(--space-6)}.sidebar-logo{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);gap:var(--space-3);text-decoration:none;transition:all var(--transition-base)}.sidebar-logo,.sidebar-logo-icon{align-items:center;color:var(--color-text-primary);display:flex}.sidebar-logo-icon{background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border-radius:var(--radius-lg);flex-shrink:0;font-size:var(--font-size-lg);height:32px;justify-content:center;width:32px}.sidebar-logo-text{font-family:var(--font-family-display);letter-spacing:-.025em;transition:opacity var(--transition-base)}.sidebar.collapsed .sidebar-logo-text{opacity:0;overflow:hidden;width:0}.sidebar-nav{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:var(--space-4) 0}.nav-section{margin-bottom:var(--space-6)}.nav-section-title{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.1em;padding:0 var(--space-6) var(--space-2) var(--space-6);text-transform:uppercase;transition:opacity var(--transition-base)}.sidebar.collapsed .nav-section-title{opacity:0}.nav-item{align-items:center;border-left:3px solid #0000;color:var(--color-text-secondary);display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-3);margin:var(--space-1) 0;padding:var(--space-3) var(--space-6);position:relative;text-decoration:none;transition:all var(--transition-fast)}.nav-item:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.nav-item.active,.nav-item:hover{border-left-color:var(--color-primary-500)}.nav-item.active{background:#3b82f61a;color:var(--color-primary-400);font-weight:var(--font-weight-semibold)}.nav-item.active:before{background:var(--color-primary-500);border-radius:50%;content:"";height:6px;position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);width:6px}.nav-item-icon{align-items:center;display:flex;flex-shrink:0;font-size:var(--font-size-base);height:20px;justify-content:center;width:20px}.nav-item-text{transition:opacity var(--transition-base);white-space:nowrap}.sidebar.collapsed .nav-item-text{opacity:0;overflow:hidden;width:0}.nav-item-badge{align-items:center;background:var(--color-error);border-radius:var(--radius-full);color:var(--color-text-primary);display:flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);height:18px;justify-content:center;margin-left:auto;min-width:18px;padding:2px 6px;transition:opacity var(--transition-base)}.sidebar.collapsed .nav-item-badge{opacity:0}.sidebar-footer{background:var(--color-background-secondary);border-top:1px solid var(--color-border-primary);padding:var(--space-4) var(--space-6)}.sidebar-user{align-items:center;border-radius:var(--radius-lg);cursor:pointer;display:flex;gap:var(--space-3);padding:var(--space-3);transition:all var(--transition-fast)}.sidebar-user:hover{background:var(--color-surface-hover)}.sidebar-user-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);border-radius:50%;color:var(--color-text-primary);display:flex;flex-shrink:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);height:36px;justify-content:center;width:36px}.sidebar-user-info{flex:1 1;min-width:0;transition:opacity var(--transition-base)}.sidebar.collapsed .sidebar-user-info{opacity:0;overflow:hidden;width:0}.sidebar-user-name{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.sidebar-user-name,.sidebar-user-role{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-toggle,.sidebar-user-role{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.sidebar-toggle{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:50%;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:-12px;top:var(--space-4);transition:all var(--transition-fast);width:24px;z-index:1}.sidebar-toggle:hover{background:var(--color-surface-hover);border-color:var(--color-border-secondary);color:var(--color-text-primary)}.main-content{background:var(--color-background);display:flex;flex:1 1;flex-direction:column;height:100vh;margin-left:var(--sidebar-width);min-height:100vh;overflow-x:hidden;overflow-y:auto;transition:margin-left var(--transition-base)}.sidebar.collapsed+.main-content{margin-left:var(--sidebar-width-collapsed)}.main-header{background:var(--color-surface);border-bottom:1px solid var(--color-border-primary);box-shadow:var(--shadow-dark-sm);height:var(--header-height);justify-content:space-between;padding:0 var(--space-6);position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.header-left,.main-header{align-items:center;display:flex}.header-left{gap:var(--space-4)}.header-title{align-items:center;color:var(--color-text-primary);display:flex;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);gap:var(--space-2);margin:0}.header-subtitle{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin:0}.header-right{align-items:center;display:flex;gap:var(--space-4)}.header-actions,.status-indicator{align-items:center;display:flex;gap:var(--space-2)}.status-indicator{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.05em;padding:var(--space-2) var(--space-3);text-transform:uppercase}.status-indicator.connected{background:#0596691a;border:1px solid #0596694d;color:#6ee7b7}.status-indicator.disconnected{background:#dc26261a;border:1px solid #dc26264d;color:#fca5a5}.status-indicator.connecting{background:#f59e0b1a;border:1px solid #f59e0b4d;color:#fcd34d}.status-dot{animation:pulse 2s infinite;background:currentColor;border-radius:50%;height:6px;width:6px}.content-wrapper{background:var(--color-background);flex:1 1;overflow-x:hidden;overflow-y:visible;padding:var(--space-6)}.content-container{margin:0 auto;max-width:100%}.dashboard-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(12,1fr)}.grid-col-1{grid-column:span 1}.grid-col-2{grid-column:span 2}.grid-col-3{grid-column:span 3}.grid-col-4{grid-column:span 4}.grid-col-5{grid-column:span 5}.grid-col-6{grid-column:span 6}.grid-col-7{grid-column:span 7}.grid-col-8{grid-column:span 8}.grid-col-9{grid-column:span 9}.grid-col-10{grid-column:span 10}.grid-col-11{grid-column:span 11}.grid-col-12{grid-column:span 12}.dashboard-section{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-dark-sm);overflow:hidden;transition:all var(--transition-base)}.dashboard-section:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-dark-base)}.section-header{background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-primary);justify-content:space-between;padding:var(--space-5) var(--space-6)}.section-header,.section-title{align-items:center;display:flex}.section-title{color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);gap:var(--space-2);margin:0}.section-subtitle{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin:var(--space-1) 0 0 0}.section-actions{align-items:center;display:flex;gap:var(--space-2)}.section-content{padding:var(--space-6)}.section-content.no-padding{padding:0}.stats-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.stat-card{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-dark-sm);overflow:hidden;padding:var(--space-5);position:relative;transition:all var(--transition-base)}.stat-card:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-dark-base);transform:translateY(-2px)}.stat-card:before{background:linear-gradient(90deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);content:"";height:3px;left:0;position:absolute;right:0;top:0}.stat-card.critical:before{background:linear-gradient(90deg,var(--color-critical) 0,var(--color-critical-dark) 100%)}.stat-card.high:before{background:linear-gradient(90deg,var(--color-high) 0,var(--color-high-dark) 100%)}.stat-card.medium:before{background:linear-gradient(90deg,var(--color-medium) 0,var(--color-medium-dark) 100%)}.stat-card.low:before{background:linear-gradient(90deg,var(--color-low) 0,var(--color-low-dark) 100%)}.stat-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3)}.stat-title{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:.05em;margin:0;text-transform:uppercase}.stat-icon{align-items:center;background:#3b82f61a;border-radius:var(--radius-lg);color:var(--color-primary-400);display:flex;font-size:var(--font-size-lg);height:32px;justify-content:center;width:32px}.stat-value{color:var(--color-text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:1;margin:0 0 var(--space-2) 0}.stat-change{align-items:center;display:flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);gap:var(--space-1)}.stat-change.positive{color:var(--color-success)}.stat-change.negative{color:var(--color-error)}.stat-change.neutral{color:var(--color-text-muted)}@media (max-width:1200px){.dashboard-grid{grid-template-columns:repeat(8,1fr)}.grid-col-3,.grid-col-4{grid-column:span 4}.grid-col-6,.grid-col-8,.grid-col-9{grid-column:span 8}}@media (max-width:768px){.sidebar{transform:translateX(-100%);z-index:var(--z-modal)}.sidebar.open{transform:translateX(0)}.main-content,.sidebar.collapsed+.main-content{margin-left:0}.main-header{padding:0 var(--space-4)}.header-title{font-size:var(--font-size-xl)}.content-wrapper{padding:var(--space-4)}.dashboard-grid{gap:var(--space-4);grid-template-columns:1fr}.grid-col-1,.grid-col-10,.grid-col-11,.grid-col-12,.grid-col-2,.grid-col-3,.grid-col-4,.grid-col-5,.grid-col-6,.grid-col-7,.grid-col-8,.grid-col-9{grid-column:span 1}.stats-grid{grid-template-columns:1fr}.section-header{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.section-content,.section-header{padding:var(--space-4)}}@media (max-width:480px){.header-left{align-items:flex-start;flex-direction:column;gap:var(--space-1)}.header-right{align-items:flex-end;flex-direction:column;gap:var(--space-2)}.stat-card{padding:var(--space-4)}.stat-value{font-size:var(--font-size-2xl)}}.mobile-menu-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;left:0;opacity:0;position:fixed;right:0;top:0;transition:all var(--transition-base);visibility:hidden;z-index:var(--z-modal-backdrop)}.mobile-menu-overlay.open{opacity:1;visibility:visible}.mobile-menu-toggle{background:none;border:none;border-radius:var(--radius-base);color:var(--color-text-primary);cursor:pointer;display:none;font-size:var(--font-size-xl);padding:var(--space-2);transition:all var(--transition-fast)}.mobile-menu-toggle:hover{background:var(--color-surface-hover)}@media (max-width:768px){.mobile-menu-toggle{align-items:center;display:flex;justify-content:center}}.breadcrumb{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.breadcrumb,.breadcrumb-item{display:flex;gap:var(--space-2)}.breadcrumb-item{align-items:center}.breadcrumb-link{color:var(--color-text-tertiary);text-decoration:none;transition:color var(--transition-fast)}.breadcrumb-link:hover{color:var(--color-text-primary)}.breadcrumb-separator{color:var(--color-text-muted);font-size:var(--font-size-xs)}.breadcrumb-current{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes progress{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes ripple{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(4)}}@keyframes glow{0%,to{box-shadow:0 0 5px var(--color-primary-500)}50%{box-shadow:0 0 20px var(--color-primary-500),0 0 30px var(--color-primary-500)}}@keyframes alertPulse{0%,to{background-color:var(--color-error);transform:scale(1)}50%{background-color:var(--color-error-dark);transform:scale(1.05)}}.loading-spinner{animation:spin 1s linear infinite;border:2px solid var(--color-border-primary);border-radius:50%;border-top-color:var(--color-primary-500);display:inline-block;height:20px;width:20px}.loading-spinner-sm{border-width:1.5px;height:16px;width:16px}.loading-spinner-lg{border-width:3px;height:32px;width:32px}.loading-spinner-xl{border-width:4px;height:48px;width:48px}.loading-dots{align-items:center;display:inline-flex;gap:var(--space-1)}.loading-dot{animation:bounce 1.4s ease-in-out infinite both;background:var(--color-primary-500);border-radius:50%;height:6px;width:6px}.loading-dot:first-child{animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}.loading-dot:nth-child(3){animation-delay:0s}.loading-pulse{animation:pulse 1.5s ease-in-out infinite;background:var(--color-primary-500);border-radius:50%;display:inline-block;height:20px;width:20px}.loading-bars{align-items:center;display:inline-flex;gap:2px}.loading-bar{animation:bounce 1.4s ease-in-out infinite both;background:var(--color-primary-500);border-radius:2px;height:16px;width:3px}.loading-bar:first-child{animation-delay:-.32s}.loading-bar:nth-child(2){animation-delay:-.16s}.loading-bar:nth-child(3){animation-delay:0s}.loading-bar:nth-child(4){animation-delay:.16s}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-background-secondary) 25%,var(--color-surface-hover) 50%,var(--color-background-secondary) 75%);background-size:200% 100%;border-radius:var(--radius-base)}.skeleton-text{border-radius:var(--radius-sm);height:1em;margin:.5em 0}.skeleton-text-sm{height:.75em}.skeleton-text-lg{height:1.25em}.skeleton-title{border-radius:var(--radius-base);height:1.5em;margin:.5em 0}.skeleton-paragraph{display:flex;flex-direction:column;gap:var(--space-2)}.skeleton-avatar{border-radius:50%;height:40px;width:40px}.skeleton-avatar-sm{height:32px;width:32px}.skeleton-avatar-lg{height:56px;width:56px}.skeleton-button{border-radius:var(--radius-md);height:var(--button-height-base);width:120px}.skeleton-card{border-radius:var(--radius-lg);padding:var(--space-4)}.skeleton-table-row{border-radius:var(--radius-base);height:var(--table-row-height);margin-bottom:var(--space-1)}.loading-container{align-items:center;display:flex;flex-direction:column;gap:var(--space-4);justify-content:center;min-height:200px;padding:var(--space-12);text-align:center}.loading-container-sm{min-height:120px;padding:var(--space-8)}.loading-container-lg{min-height:300px;padding:var(--space-16)}.loading-title{color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.loading-text{color:var(--color-text-tertiary);font-size:var(--font-size-sm);margin:0;max-width:300px}.loading-progress{background:var(--color-background-secondary);height:4px;max-width:300px;width:100%}.loading-progress,.loading-progress-bar{border-radius:var(--radius-full);overflow:hidden;position:relative}.loading-progress-bar{background:linear-gradient(90deg,var(--color-primary-500),var(--color-primary-600));height:100%}.loading-progress-indeterminate .loading-progress-bar{animation:progress 2s ease-in-out infinite;width:30%}.security-scan-loading{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8);text-align:center}.security-scan-icon{align-items:center;animation:glow 2s ease-in-out infinite;background:linear-gradient(135deg,var(--color-primary-500),var(--color-primary-600));border-radius:50%;color:var(--color-text-primary);display:flex;font-size:var(--font-size-2xl);height:64px;justify-content:center;position:relative;width:64px}.security-scan-icon:after{animation:spin 2s linear infinite;border:2px solid var(--color-primary-500);border-radius:50%;border-top:2px solid #0000;bottom:-4px;content:"";left:-4px;position:absolute;right:-4px;top:-4px}.vulnerability-scan-loading{align-items:center;background:#dc26261a;border:1px solid #dc26264d;border-radius:var(--radius-lg);color:var(--color-text-primary);display:flex;gap:var(--space-3);padding:var(--space-4)}.vulnerability-scan-icon{animation:pulse 1.5s ease-in-out infinite;color:#fca5a5;height:24px;width:24px}.network-scan-loading{align-items:center;background:#0891b21a;border:1px solid #0891b24d;border-radius:var(--radius-lg);color:var(--color-text-primary);display:flex;gap:var(--space-3);padding:var(--space-4)}.network-scan-icon{animation:pulse 1.5s ease-in-out infinite;color:#67e8f9;height:24px;width:24px}.progress-ring{height:60px;position:relative;width:60px}.progress-ring-circle{fill:none;stroke:var(--color-border-primary);stroke-width:4;height:100%;transform:rotate(-90deg);transform-origin:50% 50%;width:100%}.progress-ring-progress{stroke:var(--color-primary-500);stroke-linecap:round;transition:stroke-dashoffset .5s ease-in-out}.progress-ring-text{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.alert-pulse{animation:alertPulse 2s ease-in-out infinite}.critical-alert{overflow:hidden;position:relative}.critical-alert:before{animation:progress 2s ease-in-out infinite;background:linear-gradient(90deg,#0000,#dc262633,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}.fade-in{animation:fadeIn .3s ease-out}.fade-in-up{animation:fadeInUp .3s ease-out}.fade-in-down{animation:fadeInDown .3s ease-out}.slide-in-left{animation:slideInLeft .3s ease-out}.slide-in-right{animation:slideInRight .3s ease-out}.scale-in{animation:scaleIn .2s ease-out}.hover-lift{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hover-lift:hover{box-shadow:var(--shadow-dark-lg);transform:translateY(-2px)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:0 0 20px #3b82f64d}.hover-scale{transition:transform var(--transition-fast)}.hover-scale:hover{transform:scale(1.02)}.stagger-children>*{animation:fadeInUp .5s ease-out both}.stagger-children>:first-child{animation-delay:.1s}.stagger-children>:nth-child(2){animation-delay:.2s}.stagger-children>:nth-child(3){animation-delay:.3s}.stagger-children>:nth-child(4){animation-delay:.4s}.stagger-children>:nth-child(5){animation-delay:.5s}.stagger-children>:nth-child(6){animation-delay:.6s}.dashboard-loading{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:var(--space-6)}.dashboard-loading-card{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6)}.table-loading{gap:var(--space-2);padding:var(--space-4)}.chart-loading,.table-loading{display:flex;flex-direction:column}.chart-loading{align-items:center;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);gap:var(--space-4);height:300px;justify-content:center}.chart-loading-bars{align-items:end;display:flex;gap:var(--space-1);height:60px}.chart-loading-bar{animation:bounce 1.4s ease-in-out infinite both;background:var(--color-primary-500);border-radius:var(--radius-sm);width:8px}.chart-loading-bar:first-child{animation-delay:-.32s;height:20px}.chart-loading-bar:nth-child(2){animation-delay:-.16s;height:40px}.chart-loading-bar:nth-child(3){animation-delay:0s;height:60px}.chart-loading-bar:nth-child(4){animation-delay:.16s;height:35px}.chart-loading-bar:nth-child(5){animation-delay:.32s;height:25px}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}.gpu-accelerated{-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000px;transform:translateZ(0)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.loading-bars,.loading-dots,.loading-pulse,.loading-spinner,.skeleton{animation:none}.skeleton{background:var(--color-background-secondary)}}.security-overview-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:var(--space-8)}.security-metric-card{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-dark-sm);overflow:hidden;padding:var(--space-6);position:relative;transition:all var(--transition-base)}.security-metric-card:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-dark-base);transform:translateY(-2px)}.security-metric-card:before{background:linear-gradient(90deg,var(--color-primary-500) 0,var(--color-primary-600) 100%);content:"";height:4px;left:0;position:absolute;right:0;top:0}.security-metric-card.critical:before{background:linear-gradient(90deg,var(--color-critical) 0,var(--color-critical-dark) 100%)}.security-metric-card.high:before{background:linear-gradient(90deg,var(--color-high) 0,var(--color-high-dark) 100%)}.security-metric-card.medium:before{background:linear-gradient(90deg,var(--color-medium) 0,var(--color-medium-dark) 100%)}.security-metric-card.low:before{background:linear-gradient(90deg,var(--color-low) 0,var(--color-low-dark) 100%)}.metric-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.metric-title{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:.05em;margin:0;text-transform:uppercase}.metric-icon{align-items:center;background:#3b82f61a;border-radius:var(--radius-lg);color:var(--color-primary-400);display:flex;font-size:var(--font-size-xl);height:40px;justify-content:center;width:40px}.metric-icon.critical{background:#dc26261a;color:#fca5a5}.metric-icon.high{background:#ea580c1a;color:#fdba74}.metric-icon.medium{background:#d977061a;color:#fcd34d}.metric-icon.low{background:#0596691a;color:#6ee7b7}.metric-value{color:var(--color-text-primary);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);line-height:1;margin:0 0 var(--space-2) 0}.metric-change{align-items:center;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--space-1)}.metric-change.positive{color:var(--color-success)}.metric-change.negative{color:var(--color-error)}.metric-change.neutral{color:var(--color-text-muted)}.metric-description{color:var(--color-text-tertiary);font-size:var(--font-size-xs);margin-top:var(--space-2)}.vulnerability-list{display:flex;flex-direction:column;gap:var(--space-3)}.vulnerability-item{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);cursor:pointer;padding:var(--space-4);transition:all var(--transition-fast)}.vulnerability-item:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-dark-sm)}.vulnerability-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-2)}.vulnerability-title{color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0}.vulnerability-meta{align-items:center;color:var(--color-text-tertiary);display:flex;font-size:var(--font-size-xs);gap:var(--space-3)}.vulnerability-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0}.security-alerts-container{display:flex;flex-direction:column;gap:var(--space-3);max-height:400px;overflow-y:auto}.security-alert{background:var(--color-surface);border:1px solid var(--color-border-primary);border-left:4px solid var(--color-primary-500);border-radius:var(--radius-lg);padding:var(--space-4);transition:all var(--transition-fast)}.security-alert.critical{background:#dc26260d;border-left-color:var(--color-critical)}.security-alert.high{background:#ea580c0d;border-left-color:var(--color-high)}.security-alert.medium{background:#d977060d;border-left-color:var(--color-medium)}.security-alert.low{background:#0596690d;border-left-color:var(--color-low)}.alert-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-2)}.alert-title{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:0}.alert-timestamp{color:var(--color-text-muted);font-size:var(--font-size-xs)}.alert-message{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0}.network-graph-container{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);height:400px;overflow:hidden;padding:var(--space-6);position:relative}.network-node{background:var(--color-primary-500);border:2px solid var(--color-surface);border-radius:50%;cursor:pointer;height:12px;transition:all var(--transition-fast);width:12px}.network-node:hover{background:var(--color-primary-400);transform:scale(1.5)}.network-node.vulnerable{background:var(--color-error)}.network-node.secure{background:var(--color-success)}.network-edge{stroke:var(--color-border-secondary);stroke-width:1;opacity:.6}.scan-results-table{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);overflow:hidden}.scan-results-header{align-items:center;background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;padding:var(--space-5) var(--space-6)}.scan-results-title{color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.scan-results-filters{align-items:center;display:flex;gap:var(--space-3)}.filter-select{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3)}.filter-select:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #3b82f61a;outline:none}.technology-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.technology-card{background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);cursor:pointer;padding:var(--space-4);text-align:center;transition:all var(--transition-fast)}.technology-card:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-dark-sm);transform:translateY(-2px)}.technology-icon{align-items:center;background:var(--color-background-secondary);border-radius:var(--radius-lg);display:flex;font-size:var(--font-size-xl);height:48px;justify-content:center;margin:0 auto var(--space-3) auto;width:48px}.technology-name{color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-1) 0}.technology-version{margin:0}.status-bar,.technology-version{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.status-bar{align-items:center;background:var(--color-surface);border-top:1px solid var(--color-border-primary);bottom:0;display:flex;height:32px;left:var(--sidebar-width);padding:0 var(--space-6);position:fixed;right:0;transition:left var(--transition-base);z-index:var(--z-sticky)}.sidebar.collapsed~.main-content .status-bar{left:var(--sidebar-width-collapsed)}.status-item{align-items:center;display:flex;gap:var(--space-2);margin-right:var(--space-6)}.status-item.error{color:var(--color-error)}.status-item.success{color:var(--color-success)}.status-item.warning{color:var(--color-warning)}.toast-container{flex-direction:column;max-width:400px;position:fixed;right:var(--space-6);top:var(--space-6);z-index:var(--z-toast)}.toast,.toast-container{display:flex;gap:var(--space-3)}.toast{align-items:flex-start;animation:slideInRight .3s ease-out;background:var(--color-surface);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-dark-lg);padding:var(--space-4)}.toast.success{border-left:4px solid var(--color-success)}.toast.error{border-left:4px solid var(--color-error)}.toast.warning{border-left:4px solid var(--color-warning)}.toast.info{border-left:4px solid var(--color-info)}.toast-icon{flex-shrink:0;height:20px;margin-top:2px;width:20px}.toast-content{flex:1 1}.toast-title{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-1) 0}.toast-message,.toast-title{font-size:var(--font-size-sm)}.toast-message{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin:0}.toast-close{background:none;border:none;border-radius:var(--radius-base);color:var(--color-text-tertiary);cursor:pointer;flex-shrink:0;padding:var(--space-1);transition:all var(--transition-fast)}.toast-close:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}@media (max-width:768px){.security-overview-grid{gap:var(--space-4);grid-template-columns:1fr}.technology-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.status-bar{font-size:var(--font-size-xs);left:0;padding:0 var(--space-4)}.toast-container{left:var(--space-4);max-width:none;right:var(--space-4);top:var(--space-4)}.metric-value{font-size:var(--font-size-3xl)}.vulnerability-header{align-items:flex-start;flex-direction:column;gap:var(--space-2)}}@media print{.mobile-menu-toggle,.sidebar,.status-bar,.toast-container{display:none!important}.main-content{margin-left:0!important}.security-alert,.security-metric-card,.vulnerability-item{border:1px solid #ccc!important;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}.content-wrapper{padding:0!important}}@media (prefers-contrast:high){:root{--color-border-primary:#fff;--color-border-secondary:#fff;--color-text-primary:#fff;--color-text-secondary:#fff;--color-background:#000;--color-surface:#000}}.container{margin:0 auto;max-width:1200px;padding:0 var(--space-4)}body{background-color:var(--color-background)!important;color:var(--color-text-primary)!important}*{box-sizing:border-box}body,html{height:100%;overflow:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9fafb;color:#1f2937;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;margin:0;padding:0}#root{height:100%;overflow:hidden}.card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a}.btn{align-items:center;border:1px solid #0000;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:all .2s;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#3b82f6;border-color:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.btn-secondary{background:#6b7280;border-color:#6b7280;color:#fff}.btn-secondary:hover:not(:disabled){background:#4b5563;border-color:#4b5563}.btn-success{background:#10b981;border-color:#10b981;color:#fff}.btn-success:hover:not(:disabled){background:#059669;border-color:#059669}.btn-danger{background:#ef4444;border-color:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-outline{background:#fff;border-color:#d1d5db;color:#374151}.btn-outline:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-sm{font-size:.75rem;padding:.5rem 1rem}.status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .75rem;text-transform:uppercase}.status-pending{background:#fef3c7;color:#d97706}.status-running{background:#dbeafe;color:#2563eb}.status-completed{background:#dcfce7;color:#166534}.status-failed{background:#fee2e2;color:#dc2626}.severity-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .75rem;text-transform:uppercase}.severity-critical{background:#fee2e2;color:#dc2626}.severity-high{background:#fed7d7;color:#e53e3e}.severity-medium{background:#fef5e7;color:#dd6b20}.severity-low{background:#f0fff4;color:#38a169}.severity-info{background:#ebf8ff;color:#3182ce}.severity-system{background:#94a3b8;color:#fff}.loading{align-items:center;color:#4b5563;display:flex;font-size:1.125rem;justify-content:center;padding:3rem}.loading:before{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;content:"";height:20px;margin-right:.5rem;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error{font-size:1.125rem;justify-content:center;padding:3rem}.error,.error-message{align-items:center;color:#dc2626;display:flex}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;gap:.5rem;margin-bottom:1rem;padding:1rem}.empty-state{color:#4b5563;padding:3rem 2rem;text-align:center}.empty-state i{color:#9ca3af;font-size:3rem;margin-bottom:1rem}.empty-state h2,.empty-state h3{color:#374151;font-weight:600;margin:0 0 .5rem}.empty-state p{color:#4b5563;margin:0 0 1.5rem}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:8px;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.modal-close{background:none;border:none;border-radius:4px;color:#4b5563;cursor:pointer;font-size:1.5rem;padding:.25rem;transition:color .2s}.modal-close:hover{color:#374151}.modal-form{padding:1.5rem}.modal-actions{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:.75rem;justify-content:flex-end;margin:1.5rem -1.5rem -1.5rem;padding:1.5rem}.form-group{display:flex;flex-direction:column;margin-bottom:1rem}.form-label{color:#374151;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.75rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-input::placeholder{color:#9ca3af}.form-help{color:#4b5563;font-size:.75rem;margin-top:.25rem}.form-checkbox{align-items:center;cursor:pointer;display:flex;gap:.5rem}.form-checkbox input[type=checkbox]{margin:0}.breadcrumb{align-items:center;color:#4b5563;display:inline-flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;text-decoration:none;transition:color .2s}.breadcrumb:hover{color:#374151}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-8{padding:2rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.w-full{width:100%}.h-full{height:100%}.rounded{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.shadow{box-shadow:0 1px 3px 0 #0000001a}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a}.border{border:1px solid #e5e7eb}.border-gray-200{border-color:#e5e7eb}.border-gray-300{border-color:#d1d5db}.attack-path-modal-overlay,.modal-overlay,.network-graph-modal-overlay,.priority-scores-modal-overlay,.scan-comparison-modal,.technology-report-modal-overlay,.timing-statistics-modal-overlay,[class*=-modal-overlay],[class*=-modal]:not([class*=-modal-content]):not([class*=-modal-header]):not([class*=-modal-body]):not([class*=-modal-footer]):not([class*=-modal-actions]){bottom:0!important;height:100vh!important;left:0!important;margin:0!important;position:fixed!important;right:0!important;top:0!important;width:100vw!important;z-index:9999!important}.attack-path-modal,.modal-content,.network-graph-modal,.priority-scores-modal,.scan-comparison-content,.technology-report-modal,.timing-statistics-modal,[class*=-modal-content]{height:auto!important;margin:auto!important;position:relative!important;width:auto!important}
/*# sourceMappingURL=main.add6e118.css.map*/