*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Fira Code,Monaco,Cascadia Code,Roboto Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}[type=text],input:where(:not([type])),[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,input:where(:not([type])):focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: #2563eb;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:hover,[type=checkbox]:checked:focus,[type=radio]:checked:hover,[type=radio]:checked:focus{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}body{min-height:100vh;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}body:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}#root{min-height:100vh}*:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(14 165 233 / var(--tw-ring-opacity, 1));--tw-ring-opacity: .5}input,textarea,select{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}input::-moz-placeholder,textarea::-moz-placeholder,select::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}input::placeholder,textarea::placeholder,select::placeholder{--tw-placeholder-opacity: 1;color:rgb(156 163 175 / var(--tw-placeholder-opacity, 1))}input:is(.dark *),textarea:is(.dark *),select:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}input:is(.dark *)::-moz-placeholder,textarea:is(.dark *)::-moz-placeholder,select:is(.dark *)::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(148 163 184 / var(--tw-placeholder-opacity, 1))}input:is(.dark *)::placeholder,textarea:is(.dark *)::placeholder,select:is(.dark *)::placeholder{--tw-placeholder-opacity: 1;color:rgb(148 163 184 / var(--tw-placeholder-opacity, 1))}input:focus,textarea:focus,select:focus{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1));--tw-ring-opacity: 1;--tw-ring-color: rgb(14 165 233 / var(--tw-ring-opacity, 1))}button{transition-property:all;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1)}::-webkit-scrollbar{width:.5rem}::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.dark ::-webkit-scrollbar-track{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.dark ::-webkit-scrollbar-thumb{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.dark ::-webkit-scrollbar-thumb:hover{--tw-bg-opacity: 1;background-color:rgb(100 116 139 / var(--tw-bg-opacity, 1))}*{scrollbar-width:thin;scrollbar-color:#9ca3af #f3f4f6}.dark *{scrollbar-color:#64748b #1e293b}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.phase-indicator{display:flex;align-items:center}.phase-indicator>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.phase-indicator{font-size:.875rem;line-height:1.25rem}.phase-step{display:flex;height:2rem;width:2rem;align-items:center;justify-content:center;border-radius:9999px;border-width:1px;--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.phase-step.active{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(14 165 233 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.phase-step.completed{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.form-group>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.nav-link.active{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.nav-link.active:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.menu-divider{margin-top:.5rem;margin-bottom:.5rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.menu-divider:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.visible{visibility:visible}.static{position:static}.absolute{position:absolute}.relative{position:relative}.flex{display:flex}.grid{display:grid}.hidden{display:none}.italic{font-style:italic}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.dark .phase-header{background:#1e293b!important;color:#fff!important}.dark .phase-header h1,.dark .header-content h1{color:#fff!important}.dark .phase-description{color:#cbd5e1!important}.dark .tactic-card,.dark .technique-card,.dark .software-card,.dark .group-card,.dark .evidence-question-card,.dark .evidence-item-card{background:#1e293bf2!important;border-color:#475569!important;color:#fff!important}.dark .tactic-header h3,.dark .technique-header h3,.dark .software-header h3,.dark .group-header h3,.dark .question-header h3{color:#fff!important}.dark .technique-description,.dark .software-description,.dark .group-description{color:#cbd5e1!important}.dark .phase1-questionnaire{background:#1a202c!important;color:#e2e8f0!important}.dark .questionnaire-navigation,.dark .questionnaire-controls{background:#2d3748!important;border-color:#4a5568!important}.dark .overall-progress{background:#4a5568!important;border-color:#718096!important}.dark .page-tab{background:#4a5568!important;border-color:#718096!important;color:#e2e8f0!important}.dark .page-tab.active{background:#3182ce!important;border-color:#3182ce!important}.dark .page-number{background:#718096!important;color:#e2e8f0!important}.dark .nav-button{background:#4a5568!important;border-color:#718096!important;color:#e2e8f0!important}.dark .error-message{background:#2d3748!important;border-color:#e53e3e!important;color:#e2e8f0!important}.dark .question-page{background:#2d3748!important;color:#e2e8f0!important}.dark .page-header{border-bottom-color:#4a5568!important}.dark .page-header h2{color:#e2e8f0!important}.dark .page-explanation{background:#4a5568!important;border-left-color:#63b3ed!important}.dark .page-progress{background:#4a5568!important;border-color:#718096!important}.dark .completion-summary h3{color:#e2e8f0!important}.dark .completion-summary li{background:#4a5568!important;border-color:#718096!important;color:#e2e8f0!important}.dark .completion-summary strong{color:#fff!important}.dark .empty-page-message{background:#744210!important;border-color:#975a16!important;color:#faf089!important}.dark .asset-summary{background:#495057!important;border-color:#6c757d!important}.dark input:not([type=radio]):not([type=checkbox]),.dark textarea,.dark select,.dark .form-control{background:#374151!important;border-color:#4b5563!important;color:#e5e7eb!important}.dark input::-moz-placeholder,.dark textarea::-moz-placeholder{color:#9ca3af!important}.dark input::placeholder,.dark textarea::placeholder{color:#9ca3af!important}.dark input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:1rem;height:1rem;border:2px solid #6b7280;border-radius:50%;background:#374151;cursor:pointer;position:relative;margin-right:.5rem}.dark input[type=radio]:checked{background:#3b82f6;border-color:#3b82f6}.dark input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:.375rem;height:.375rem;background:#fff;border-radius:50%}.dark input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:1rem;height:1rem;border:2px solid #6b7280;border-radius:.25rem;background:#374151;cursor:pointer;position:relative;margin-right:.5rem}.dark input[type=checkbox]:checked{background:#3b82f6;border-color:#3b82f6}.dark input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:.75rem;font-weight:700;line-height:1}.dark input[type=radio]:hover,.dark input[type=checkbox]:hover{border-color:#9ca3af}.dark input[type=radio]:focus,.dark input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 2px #3b82f680}.dark h1,.dark h2,.dark h3,.dark h4,.dark h5,.dark h6{color:#f3f4f6!important}.dark p,.dark span,.dark div{color:#e5e7eb!important}.dark div{background:transparent!important}.dark label,.dark .form-label{color:#f3f4f6!important;background:transparent!important}.dark .btn,.dark button:not(.cyber-button):not(.cyber-button-secondary):not(.segmented-button):not(.nav-button){background:#4b5563!important;border-color:#6b7280!important;color:#f3f4f6!important}.dark .btn:hover,.dark button:not(.cyber-button):not(.cyber-button-secondary):not(.segmented-button):not(.nav-button):hover{background:#374151!important}.dark ul,.dark ol,.dark li{color:#e5e7eb!important}.dark .summary-item,.dark .list-item{background:#374151!important;border-color:#4b5563!important}.dark .modal,.dark .overlay,.dark .popup{background:#1f2937!important;border-color:#374151!important}.dark table,.dark th,.dark td,.dark .alert,.dark .message,.dark .notification,.dark .dropdown,.dark .select-options{background:#374151!important;border-color:#4b5563!important;color:#e5e7eb!important}.container{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.card{background:#fffffff2;border-radius:15px;padding:25px;margin-bottom:20px;box-shadow:0 8px 32px #1f26875e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.18)}.dark .card{background:#1e293bf2;border:1px solid rgba(71,85,105,.3);box-shadow:0 8px 32px #00000080}.header{position:relative;text-align:center}.header h1{margin:0 0 10px;color:#2c3e50;font-size:2.2em;font-weight:700}.header p{margin:0;color:#5a6c7d;font-size:1.1em;font-weight:300}.dark .header h1{color:#fff}.dark .header p{color:#cbd5e1}.dark .phase-number{background:#4a5568!important;color:#e2e8f0!important}.dark .phase-label{color:#cbd5e1!important}.dark .phase-connector{background:#4a5568!important}.dark .phase-step.active .phase-number{background:linear-gradient(135deg,#3b82f6,#1e40af)!important;color:#fff!important}.dark .phase-step.current .phase-number{background:linear-gradient(135deg,#059669,#047857)!important;color:#fff!important;box-shadow:0 4px 8px #05966966!important}.dark .phase-connector.completed{background:linear-gradient(135deg,#3b82f6,#1e40af)!important}.header-menu{position:absolute;top:10px;right:10px;display:flex;align-items:center;gap:10px}.storage-status{display:flex;align-items:center}.storage-indicator{font-size:12px;color:#666;background:#fffc;padding:4px 8px;border-radius:12px;border:1px solid rgba(0,0,0,.1);white-space:nowrap;cursor:default}.menu-toggle{background:none;border:none;font-size:24px;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .3s}.menu-toggle:hover{background-color:#0000001a}.dropdown-menu{position:absolute;top:100%;right:0;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:150px;z-index:1000}.dropdown-menu.hidden{display:none}.menu-item{display:block;width:100%;padding:12px 16px;border:none;background:none;text-align:left;cursor:pointer;transition:background-color .2s;color:#333}.menu-item:hover{background-color:#f5f5f5}.dark .storage-indicator{background:#475569cc!important;color:#e2e8f0!important;border:1px solid rgba(148,163,184,.3)!important}.dark .menu-toggle{color:#e2e8f0!important}.dark .menu-toggle:hover{background-color:#94a3b833!important}.dark .dropdown-menu{background:#374151!important;border:1px solid #4b5563!important;box-shadow:0 4px 12px #0000004d!important}.dark .menu-item{color:#f3f4f6!important}.dark .menu-item:hover{background-color:#4b5563!important}.phase-progress-container{margin-bottom:30px}.phase-steps{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px}.phase-step{display:flex;flex-direction:column;align-items:center;padding:15px;min-width:100px;transition:all .3s ease}.phase-step.active .phase-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.phase-step.current .phase-number{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;box-shadow:0 4px 8px #4caf504d}.phase-step.current .phase-label{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.5)!important;display:block!important;visibility:visible!important;opacity:1!important}.phase-number{width:40px;height:40px;border-radius:50%;background:#e0e0e0;color:#2c3e50;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px;margin-bottom:8px;transition:all .3s ease}.phase-label{font-size:12px;color:#fff;font-weight:600;text-transform:uppercase;letter-spacing:.5px;text-shadow:0 1px 2px rgba(0,0,0,.5);display:block;visibility:visible;opacity:1}.phase-connector{width:40px;height:2px;background:#e0e0e0;transition:all .3s ease}.phase-connector.completed{background:linear-gradient(135deg,#667eea,#764ba2)}.main-content{min-height:400px}@media (max-width: 768px){.container{padding:15px}.header h1{font-size:1.8em}.header p{font-size:1em}.phase-steps{gap:5px}.phase-step{min-width:80px;padding:10px}.phase-number{width:35px;height:35px;font-size:16px}.phase-connector{width:30px}}.cve-input-container{width:100%}.cve-input-row{display:flex;gap:.5rem;align-items:stretch}.autocomplete-container{position:relative;flex:1}.cve-input-field{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;font-family:Courier New,monospace;text-transform:uppercase;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.cve-input-field:focus{outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.cve-input-field:disabled{background-color:#f8f9fa;opacity:.65}.autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ced4da;border-top:none;border-radius:0 0 4px 4px;max-height:300px;overflow-y:auto;z-index:1000;box-shadow:0 4px 6px #0000001a}.autocomplete-item{padding:.75rem;cursor:pointer;border-bottom:1px solid #e9ecef;transition:background-color .15s ease}.autocomplete-item:hover,.autocomplete-item.selected{background-color:#f8f9fa}.autocomplete-item:last-child{border-bottom:none}.autocomplete-cve-id{font-family:Courier New,monospace;font-weight:700;color:#495057;margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}.autocomplete-description{font-size:.875rem;color:#6c757d;line-height:1.3}.zeroday-button{padding:.75rem 1rem;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;white-space:nowrap;transition:background-color .15s ease}.zeroday-button:hover:not(:disabled){background:#218838}.zeroday-button:disabled{background:#6c757d;cursor:not-allowed}.cve-validation-message{color:#dc3545;font-size:.875rem;margin-top:.5rem;padding:.5rem;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px}.cve-loading{color:#007bff;font-size:.875rem;margin-top:.5rem;padding:.5rem;background:#cce7ff;border:1px solid #80bdff;border-radius:4px;display:flex;align-items:center;gap:.5rem}.cve-loading:before{content:"";width:16px;height:16px;border:2px solid #007bff;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}.cve-tags-container{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.cve-tag{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#e9ecef;border:1px solid #ced4da;border-radius:20px;font-size:.875rem;transition:all .2s ease}.cve-tag.zeroday{background:#fff3cd;border-color:#ffeaa7;color:#856404}.cve-tag:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.cve-id{font-family:Courier New,monospace;font-weight:700}.kev-badge{background:#dc3545;color:#fff;padding:.125rem .375rem;border-radius:10px;font-size:.75rem;font-weight:700;text-transform:uppercase}.cve-remove{background:#dc3545;color:#fff;border:none;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;font-weight:700;line-height:1;transition:background-color .15s ease}.cve-remove:hover{background:#c82333}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:600px;width:90vw;max-height:80vh;overflow-y:auto;box-shadow:0 10px 25px #0003;animation:slideIn .3s ease}.modal-content h3{margin:0 0 1.5rem;color:#495057}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:#495057;margin-bottom:.5rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.form-group textarea{resize:vertical;min-height:100px}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e9ecef}.modal-actions button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:all .15s ease}.modal-actions button[type=button]{background:#6c757d;color:#fff}.modal-actions button[type=button]:hover{background:#5a6268}.modal-actions button[type=submit]{background:#007bff;color:#fff}.modal-actions button[type=submit]:hover{background:#0056b3}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.cve-input-row{flex-direction:column;gap:.75rem}.autocomplete-dropdown{max-height:200px}.modal-content{padding:1.5rem;margin:1rem}.cve-tags-container{margin-top:.75rem}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}@media (prefers-contrast: high){.cve-input-field,.autocomplete-dropdown{border-color:#000}.kev-badge{background:#000;color:#fff}}@media (prefers-reduced-motion: reduce){.cve-tag{transition:none}.cve-tag:hover{transform:none}.cve-loading:before{animation:none}.modal-overlay,.modal-content{animation:none}}.dark .cve-input-field{background:#374151!important;border-color:#4b5563!important;color:#e5e7eb!important}.dark .cve-input-field:focus{border-color:#3b82f6!important;box-shadow:0 0 0 .2rem #3b82f640!important}.dark .cve-input-field:disabled{background-color:#1f2937!important;color:#6b7280!important}.dark .autocomplete-dropdown{background:#374151!important;border-color:#4b5563!important;box-shadow:0 4px 6px #0000004d!important}.dark .autocomplete-item{border-bottom-color:#4b5563!important;color:#e5e7eb!important}.dark .autocomplete-item:hover,.dark .autocomplete-item.selected{background-color:#4b5563!important}.dark .autocomplete-cve-id{color:#f3f4f6!important}.dark .autocomplete-description{color:#9ca3af!important}.dark .zeroday-button{background:#059669!important;color:#fff!important}.dark .zeroday-button:hover:not(:disabled){background:#047857!important}.dark .zeroday-button:disabled{background:#374151!important;color:#6b7280!important}.dark .cve-validation-message{color:#f87171!important;background:#1f2937!important;border-color:#ef4444!important}.dark .cve-loading{color:#60a5fa!important;background:#1e3a8a!important;border-color:#3b82f6!important}.dark .cve-loading:before{border-color:#3b82f6!important;border-top-color:transparent!important}.dark .cve-tag{background:#374151!important;border-color:#4b5563!important;color:#e5e7eb!important}.dark .cve-tag.zeroday{background:#451a03!important;border-color:#92400e!important;color:#fbbf24!important}.dark .cve-tag:hover{box-shadow:0 2px 4px #0000004d!important}.dark .cve-id{color:#f3f4f6!important}.dark .kev-badge,.dark .cve-remove{background:#dc2626!important;color:#fff!important}.dark .cve-remove:hover{background:#b91c1c!important}.dark .modal-overlay{background:#000000b3!important}.dark .modal-content{background:#1f2937!important;border-color:#374151!important;box-shadow:0 10px 25px #00000080!important}.dark .modal-content h3,.dark .form-group label{color:#f3f4f6!important}.dark .form-group input,.dark .form-group textarea,.dark .form-group select{background:#374151!important;border-color:#4b5563!important;color:#e5e7eb!important}.dark .form-group input:focus,.dark .form-group textarea:focus,.dark .form-group select:focus{border-color:#3b82f6!important;box-shadow:0 0 0 .2rem #3b82f640!important}.dark .modal-actions{border-top-color:#374151!important}.dark .modal-actions button[type=button]{background:#374151!important;color:#e5e7eb!important}.dark .modal-actions button[type=button]:hover{background:#4b5563!important}.dark .modal-actions button[type=submit]{background:#3b82f6!important;color:#fff!important}.dark .modal-actions button[type=submit]:hover{background:#2563eb!important}.datetime-picker{width:100%;position:relative}.datetime-help-button{position:relative;display:inline-block;margin-bottom:1rem}.help-icon{background:#007bff;color:#fff;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.875rem;font-weight:700;transition:background-color .2s ease}.help-icon:hover{background:#0056b3}.dark .help-icon{background:#3b82f6!important;color:#fff!important}.dark .help-icon:hover{background:#2563eb!important}.datetime-help-content{position:absolute;top:35px;left:0;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1rem;min-width:300px;z-index:1000;box-shadow:0 4px 6px #0000001a;animation:slideDown .2s ease}.datetime-help-content h4{margin:0 0 .5rem;color:#495057;font-size:.875rem}.datetime-help-content ul{margin:0;padding-left:1rem;font-size:.8rem;color:#6c757d}.datetime-help-content li{margin-bottom:.25rem}.datetime-inputs{display:flex;gap:1rem;margin-bottom:1.5rem}.datetime-input-group{flex:1}.datetime-input-group label{display:block;font-weight:600;color:#495057;margin-bottom:.5rem;font-size:.875rem}.datetime-input-row{display:flex;align-items:center;gap:8px}.datetime-mode-control,.datetime-precision-control{margin-bottom:1.5rem}.datetime-mode-control label,.datetime-precision-control label{display:block;font-weight:600;color:#495057;margin-bottom:.5rem;font-size:.875rem}.segmented-button-group{display:flex;border:1px solid #ced4da;border-radius:4px;overflow:hidden}.segmented-button{flex:1;padding:.75rem 1rem;border:none;background:#fff;color:#495057;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border-right:1px solid #ced4da;position:relative}.segmented-button:last-child{border-right:none}.segmented-button:hover:not(:disabled):not(.active){background:#f8f9fa;color:#007bff}.segmented-button.active{background:#007bff;color:#fff;font-weight:600}.segmented-button:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.datetime-input{flex:1;padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.datetime-input:focus{outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.datetime-input:disabled{background-color:#f8f9fa;opacity:.65}.precision-control{margin-bottom:1.5rem}.precision-control label{display:block;font-weight:600;color:#495057;margin-bottom:.75rem;font-size:.875rem}.precision-slider-container{position:relative}.precision-slider{width:100%;height:6px;border-radius:3px;background:#e9ecef;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-bottom:.5rem}.precision-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#007bff;cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px #0003}.precision-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#007bff;cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px #0003}.precision-slider:disabled::-webkit-slider-thumb{background:#6c757d;cursor:not-allowed}.precision-slider:disabled::-moz-range-thumb{background:#6c757d;cursor:not-allowed}.precision-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#6c757d;margin-top:.25rem}.precision-labels span{text-align:center;transition:all .2s ease}.precision-labels span.active{color:#007bff;font-weight:700;transform:scale(1.1)}.datetime-controls{display:flex;gap:.75rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.range-toggle{padding:.5rem 1rem;border:1px solid #ced4da;border-radius:4px;background:#fff;cursor:pointer;font-size:.875rem;transition:all .2s ease}.range-toggle:hover:not(:disabled){border-color:#80bdff;color:#007bff}.range-toggle.active{background:#007bff;color:#fff;border-color:#007bff}.range-toggle:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.special-values{display:flex;gap:.5rem;flex-wrap:wrap}.special-value-btn{padding:.375rem .75rem;border:1px solid #ced4da;border-radius:4px;background:#fff;cursor:pointer;font-size:.8rem;transition:all .2s ease;white-space:nowrap}.special-value-btn:hover:not(:disabled){border-color:#ffc107;color:#856404;background:#fff3cd}.special-value-btn.active{background:#ffc107;color:#212529;border-color:#ffc107;font-weight:600}.special-value-btn:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.datetime-result{padding:1rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;font-size:.875rem;margin-bottom:.5rem}.datetime-result strong{color:#495057;margin-right:.5rem}.datetime-error{color:#dc3545;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;padding:.75rem;font-size:.875rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem}.datetime-error:before{content:"⚠";font-size:1rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.datetime-inputs{flex-direction:column;gap:1rem}.datetime-input-row{flex-direction:column;align-items:stretch;gap:.5rem}.datetime-controls{flex-direction:column;align-items:stretch;gap:.75rem}.segmented-button{padding:1rem;font-size:.8rem}.special-values{justify-content:center}.datetime-help-content{min-width:calc(100vw - 2rem);right:0}.precision-labels{font-size:.7rem}.precision-labels span{writing-mode:vertical-lr;text-orientation:mixed}}.dark .datetime-help-content{background:#343a40!important;border-color:#495057!important;color:#f8f9fa!important}.dark .datetime-help-content h4{color:#f8f9fa!important}.dark .datetime-help-content ul{color:#adb5bd!important}.dark .datetime-input-group label{color:#f8f9fa!important}.dark .datetime-mode-control label,.dark .datetime-precision-control label{color:#f8f9fa}.dark .segmented-button-group{border-color:#6c757d}.dark .segmented-button{background:#495057;color:#f8f9fa;border-right-color:#6c757d}.dark .segmented-button:hover:not(:disabled):not(.active){background:#6c757d;color:#80bdff}.dark .segmented-button.active{background:#3b82f6!important;color:#fff!important;font-weight:600!important}.dark .segmented-button:disabled{background:#343a40;color:#6c757d}.dark .datetime-input{background:#495057;border-color:#6c757d;color:#f8f9fa}.dark .datetime-input:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.dark .datetime-input:disabled{background-color:#343a40;color:#6c757d}.dark .precision-control label{color:#f8f9fa}.dark .precision-slider{background:#495057}.dark .precision-labels{color:#adb5bd}.dark .precision-labels span.active{color:#80bdff}.dark .datetime-result{background:#495057;border-color:#6c757d;color:#f8f9fa}.dark .datetime-result strong{color:#f8f9fa}.dark .range-toggle{background:#495057;border-color:#6c757d;color:#f8f9fa}.dark .range-toggle:hover:not(:disabled){border-color:#80bdff;color:#80bdff}.dark .range-toggle.active{background:#007bff;color:#fff;border-color:#007bff}.dark .range-toggle:disabled{background:#343a40;color:#6c757d}.dark .special-value-btn{background:#495057;border-color:#6c757d;color:#f8f9fa}.dark .special-value-btn:hover:not(:disabled){border-color:#ffc107;color:#ffc107;background:#3d2f00}.dark .special-value-btn.active{background:#ffc107;color:#212529;border-color:#ffc107}.dark .special-value-btn:disabled{background:#343a40;color:#6c757d}.dark .datetime-error{background:#2b1d1d!important;border-color:#dc3545!important;color:#f8d7da!important}.dark .datetime-picker,.dark .datetime-help-button{background:transparent!important}.dark .precision-control label{color:#f8f9fa!important}.dark .datetime-controls{background:transparent!important}@media (prefers-contrast: high){.datetime-input,.range-toggle,.special-value-btn{border-color:#000}.precision-slider{background:#000}.precision-slider::-webkit-slider-thumb{background:#000;border-color:#fff}}@media (prefers-reduced-motion: reduce){.precision-labels span{transition:none}.precision-labels span.active{transform:none}.datetime-help-content{animation:none}.range-toggle,.special-value-btn{transition:none}}.precision-slider:focus{box-shadow:0 0 0 2px #007bff}.range-toggle:focus,.special-value-btn:focus{outline:2px solid #007bff;outline-offset:2px}@media print{.datetime-help-button,.datetime-controls,.precision-control{display:none}.datetime-result{border:1px solid #000;background:#fff}}.internet-asset-input-container{width:100%}.asset-input-row{display:flex;gap:.5rem;margin-bottom:1rem}.asset-input-field{flex:1;padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.asset-input-field:focus{outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.asset-input-field:disabled{background-color:#f8f9fa;opacity:.65}.add-asset-button{padding:.75rem 1.5rem;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;white-space:nowrap;transition:background-color .15s ease}.add-asset-button:hover:not(:disabled){background:#218838}.add-asset-button:disabled{background:#6c757d;cursor:not-allowed}.asset-validation-message{color:#dc3545;font-size:.875rem;margin-bottom:1rem;padding:.5rem;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px}.asset-tags-container{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.asset-tag{border:1px solid #dee2e6;border-radius:8px;background:#fff;transition:all .2s ease;overflow:hidden}.asset-tag:hover{box-shadow:0 2px 4px #0000001a;border-color:#adb5bd}.asset-tag.expanded{border-color:#007bff;box-shadow:0 4px 8px #007bff26}.asset-tag-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.asset-main-info{display:flex;align-items:center;gap:.75rem;flex:1}.asset-icon{font-size:1.25rem;width:24px;text-align:center}.asset-value{font-family:Courier New,monospace;font-weight:600;color:#495057;word-break:break-all;flex:1}.asset-classification{padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.asset-actions{display:flex;align-items:center;gap:.5rem}.expand-button{background:none;border:none;color:#6c757d;cursor:pointer;padding:.25rem;font-size:.875rem;transition:color .15s ease}.expand-button:hover{color:#495057}.remove-asset-button{background:#dc3545;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;font-weight:700;line-height:1;transition:background-color .15s ease}.remove-asset-button:hover{background:#c82333}.asset-details{padding:1rem;background:#f8f9fa;border-top:1px solid #dee2e6;animation:slideDown .2s ease}.detail-row{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.detail-row:last-child{margin-bottom:0}.detail-row label{font-weight:600;color:#495057;min-width:100px;font-size:.875rem;margin-top:.25rem}.detail-row select,.detail-row input,.detail-row textarea{flex:1;padding:.5rem;border:1px solid #ced4da;border-radius:4px;font-size:.875rem;transition:border-color .15s ease-in-out}.detail-row select:focus,.detail-row input:focus,.detail-row textarea:focus{outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.detail-row textarea{resize:vertical;min-height:60px}.asset-summary{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;font-size:.875rem}.asset-count{font-weight:600;color:#495057}.classification-breakdown{display:flex;gap:.5rem;flex-wrap:wrap}.classification-count{padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.asset-tag[data-type=ipv4] .asset-icon,.asset-tag[data-type=ipv6] .asset-icon{color:#17a2b8}.asset-tag[data-type=domain] .asset-icon,.asset-tag[data-type=fqdn] .asset-icon{color:#28a745}.asset-tag[data-type=email] .asset-icon{color:#ffc107}.asset-tag[data-type=user-account] .asset-icon{color:#6f42c1}@keyframes slideDown{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:300px;padding-top:1rem;padding-bottom:1rem}}.asset-classification.attacker{background:#dc3545;color:#fff}.asset-classification.victim{background:#007bff;color:#fff}.asset-classification.unknown{background:#6c757d;color:#fff}.confidence-indicator{display:inline-flex;align-items:center;gap:.25rem}.confidence-indicator:before{content:"";width:12px;height:12px;border-radius:50%}.confidence-indicator.high:before{background:#28a745}.confidence-indicator.medium:before{background:#ffc107}.confidence-indicator.low:before{background:#dc3545}.asset-tag.invalid{border-color:#dc3545;background:#fff5f5}.asset-tag.validated{border-left:4px solid #28a745}@media (max-width: 768px){.asset-input-row{flex-direction:column;gap:.75rem}.asset-main-info{flex-direction:column;align-items:flex-start;gap:.5rem}.asset-value{word-break:break-all;line-height:1.3}.detail-row{flex-direction:column;gap:.5rem}.detail-row label{min-width:auto;margin-top:0}.asset-summary{flex-direction:column;align-items:flex-start;gap:.75rem}.classification-breakdown{align-self:stretch}}.dark .asset-tag{background:#495057!important;border-color:#6c757d!important;color:#f8f9fa!important}.dark .asset-details{background:#343a40!important;border-color:#495057!important}.dark .asset-summary,.dark .detail-row select,.dark .detail-row input,.dark .detail-row textarea{background:#495057!important;border-color:#6c757d!important;color:#f8f9fa!important}.dark .asset-input-field{background:#374151!important;border-color:#4b5563!important;color:#e5e7eb!important}.dark .asset-input-field:focus{border-color:#3b82f6!important;box-shadow:0 0 0 .2rem #3b82f640!important}.dark .asset-input-field:disabled{background-color:#1f2937!important;color:#6b7280!important}.dark .add-asset-button{background:#059669!important;color:#fff!important}.dark .add-asset-button:hover:not(:disabled){background:#047857!important}.dark .add-asset-button:disabled{background:#374151!important;color:#6b7280!important}.dark .asset-validation-message{color:#f87171!important;background:#1f2937!important;border-color:#ef4444!important}.dark .asset-main-info{color:#e5e7eb!important}.dark .asset-value{color:#f3f4f6!important}.dark .expand-button{color:#9ca3af!important}.dark .expand-button:hover{color:#d1d5db!important}.dark .remove-asset-button{background:#dc2626!important;color:#fff!important}.dark .remove-asset-button:hover{background:#b91c1c!important}.dark .detail-row label,.dark .asset-count{color:#f3f4f6!important}@media (prefers-contrast: high){.asset-tag,.asset-input-field,.detail-row select,.detail-row input,.detail-row textarea{border-color:#000}}@media (prefers-reduced-motion: reduce){.asset-tag{transition:none}.asset-details{animation:none}.add-asset-button,.remove-asset-button,.expand-button{transition:none}}.asset-tag:focus-within{outline:2px solid #007bff;outline-offset:2px}.add-asset-button:focus,.remove-asset-button:focus,.expand-button:focus{outline:2px solid #007bff;outline-offset:2px}@media print{.asset-input-row,.asset-validation-message,.remove-asset-button,.expand-button{display:none}.asset-tag{border:1px solid #000;-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:.5rem}.asset-details{background:#fff;border-top:1px solid #000}}.question-renderer{margin-bottom:1.5rem;padding:1rem;border:1px solid #e1e5e9;border-radius:8px;background:#fff;transition:border-color .2s ease}.dark .question-renderer{background:#1e293b;border-color:#475569;color:#fff}.question-renderer:focus-within{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.question-label-container{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.question-label{display:block;font-weight:600;color:#212529;line-height:1.4;flex:1}.dark .question-label{color:#fff}.question-label.required:after{content:" *";color:#dc3545}.dark .question-label.required:after{color:#f87171!important}.required-indicator{color:#dc3545;font-weight:700}.question-explanation{color:#6c757d;font-size:.875rem;margin-bottom:.75rem;line-height:1.4}.question-input-container{margin-bottom:.5rem}.question-input{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:4px;font-size:1rem;background-color:#fff;color:#212529;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.question-input:focus{outline:0;border-color:#80bdff;box-shadow:0 0 0 .2rem #007bff40}.question-input:disabled{background-color:#f8f9fa;opacity:.65}.question-input--textarea{resize:vertical;min-height:100px}.textarea-container{position:relative}.character-count{position:absolute;bottom:5px;right:10px;font-size:.75rem;color:#6c757d;background:#fffc;padding:2px 4px;border-radius:2px}.radio-group{display:flex;flex-direction:column;gap:.5rem}.radio-option{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .15s ease}.radio-option:hover{background-color:#f8f9fa}.radio-option input[type=radio]{margin-top:2px}.radio-label{font-weight:500}.option-description{display:block;color:#6c757d;font-size:.875rem;margin-top:.25rem;margin-left:1.5rem}.checkbox-group{display:flex;flex-direction:column;gap:.5rem}.checkbox-option{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .15s ease}.checkbox-option:hover{background-color:#f8f9fa}.checkbox-option input[type=checkbox]{margin-top:2px}.checkbox-label{font-weight:500}.boolean-toggle{display:flex;align-items:center}.toggle-switch{position:relative;display:inline-flex;align-items:center;cursor:pointer;gap:.75rem}.toggle-switch input[type=checkbox]{opacity:0;width:0;height:0}.toggle-slider{position:relative;width:50px;height:24px;background-color:#ccc;border-radius:24px;transition:background-color .3s}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:transform .3s}.toggle-switch input:checked+.toggle-slider{background-color:#007bff}.toggle-switch input:checked+.toggle-slider:before{transform:translate(26px)}.dark .toggle-slider{background-color:#374151!important}.dark .toggle-slider:before{background-color:#e5e7eb!important}.dark .toggle-switch input:checked+.toggle-slider{background-color:#3b82f6!important}.toggle-label{font-weight:500;min-width:30px}.scale-input{display:flex;flex-direction:column;gap:.5rem}.scale-slider{width:100%;height:6px;border-radius:3px;background:#e9ecef;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.scale-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#007bff;cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px #0003}.scale-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#007bff;cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px #0003}.scale-labels{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:#6c757d}.scale-current{font-weight:700;color:#007bff;font-size:1.1rem}.file-upload-container{border:2px dashed #ced4da;border-radius:8px;padding:2rem;text-align:center;transition:border-color .2s ease}.file-upload-container:hover{border-color:#80bdff}.file-input{width:100%;padding:.5rem;border:none;background:transparent}.file-upload-hint{color:#6c757d;font-size:.875rem;margin-top:.5rem}.question-error{color:#dc3545;font-size:.875rem;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.question-error:before{content:"⚠";font-size:1rem}.question-renderer.has-error,.question-renderer.has-error .question-input{border-color:#dc3545}.question-help-inline{position:relative;margin-left:.5rem}.question-help{position:relative;margin-top:.5rem}.help-toggle{background:#007bff;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.875rem;font-weight:700;transition:background-color .2s ease}.help-toggle:hover{background:#0056b3}.help-content{position:absolute;top:30px;left:0;background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:.75rem;font-size:.875rem;max-width:300px;z-index:10;box-shadow:0 2px 4px #0000001a;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.help-content.visible{opacity:1;visibility:visible}.question-help-inline .help-content{right:0;left:auto}.unsupported-question-type{padding:1rem;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;font-weight:500}@media (max-width: 768px){.question-renderer{padding:.75rem;margin-bottom:1rem}.radio-group,.checkbox-group{gap:.75rem}.help-content{max-width:calc(100vw - 2rem);right:0}}.question-renderer input:focus,.question-renderer textarea:focus,.question-renderer select:focus{outline:2px solid #007bff;outline-offset:2px}@media (prefers-contrast: high){.question-renderer,.question-input{border-color:#000}.toggle-slider{border:1px solid #000}}.question-page{max-width:800px;margin:0 auto;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.page-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e9ecef}.page-header h2{color:#2c3e50;margin:0 0 1rem;font-size:1.75rem;font-weight:600}.page-description{color:#6c757d;font-size:1.1rem;margin:0 0 1rem;line-height:1.5}.page-explanation{background:#f8f9fa;border-left:4px solid #007bff;padding:1rem;border-radius:0 4px 4px 0;margin:1rem 0}.page-explanation p{margin:0;color:#495057;font-size:.95rem;line-height:1.4}.page-progress{margin:1.5rem 0;padding:1rem;background:#f8f9fa;border-radius:6px;border:1px solid #dee2e6}.progress-bar{width:100%;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden;margin-bottom:.75rem}.progress-fill{height:100%;background:linear-gradient(90deg,#007bff,#28a745);border-radius:4px;transition:width .3s ease}.progress-text{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:#495057;margin-bottom:.5rem}.progress-percentage{font-weight:600;color:#007bff}.required-progress{font-size:.8rem}.required-status{padding:.25rem .5rem;border-radius:4px;font-weight:500}.required-status.complete{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.required-status.incomplete{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.questions-container{margin:2rem 0}.question-wrapper{display:flex;gap:1rem;margin-bottom:2rem;align-items:flex-start}.question-number{background:#007bff;color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;flex-shrink:0;margin-top:.25rem}.page-question{flex:1;margin-bottom:0}.required-question{border-left:4px solid #dc3545;padding-left:1rem}.page-summary{margin-top:3rem;padding-top:2rem;border-top:1px solid #dee2e6}.completion-summary h3{color:#495057;margin:0 0 1rem;font-size:1.25rem}.completion-summary ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.completion-summary li{background:#f8f9fa;padding:.75rem;border-radius:4px;border:1px solid #dee2e6;font-size:.875rem}.completion-summary strong{color:#495057}.empty-page{text-align:center;padding:4rem 2rem}.empty-page-message{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:2rem;color:#856404;max-width:500px;margin:2rem auto 0}.empty-page-message p{margin:0;font-size:1.1rem;line-height:1.5}.question-wrapper{animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.question-page{padding:1rem;margin:0 .5rem}.page-header h2{font-size:1.5rem}.question-wrapper{flex-direction:column;gap:.5rem;align-items:stretch}.question-number{align-self:flex-start;width:28px;height:28px;font-size:.8rem}.required-question{border-left-width:2px;padding-left:.5rem}.progress-text{flex-direction:column;gap:.25rem;align-items:flex-start}.completion-summary ul{grid-template-columns:1fr}}@media (prefers-contrast: high){.question-page{border:2px solid #000}.page-progress,.completion-summary li{border-color:#000}.progress-bar{border:1px solid #000}}@media print{.question-page{box-shadow:none;border:1px solid #000;-moz-column-break-inside:avoid;break-inside:avoid}.page-progress{display:none}.question-wrapper{-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.page-summary{page-break-before:auto}}.phase1-questionnaire{min-height:100vh;background:#f8f9fa;position:relative;padding-bottom:120px}.phase1-questionnaire.loading{display:flex;align-items:center;justify-content:center;min-height:50vh}.loading-container{text-align:center;color:#6c757d;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.dark .loading-container{background:#374151!important;color:#f8fafc!important;box-shadow:0 4px 6px #0000004d!important}.spinner{width:40px;height:40px;border:4px solid #e9ecef;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.phase1-questionnaire.error{display:flex;align-items:center;justify-content:center;min-height:50vh}.error-message{background:#fff;border:1px solid #dc3545;border-radius:8px;padding:2rem;text-align:center;max-width:500px}.error-message h2{color:#dc3545;margin:0 0 1rem}.error-message p{color:#6c757d;margin:0 0 1.5rem}.error-message button{background:#dc3545;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-size:1rem}.questionnaire-header{background:#fff;border-bottom:1px solid #dee2e6;padding:0;box-shadow:0 2px 4px #0000001a}.dark .questionnaire-header{background:#1e293b;border-bottom:1px solid #475569;box-shadow:0 2px 4px #0000004d}.header-content{max-width:1200px;margin:0 auto;padding:0 2rem}.questionnaire-header h1{color:#2c3e50;margin:0 0 .5rem;font-size:2rem;font-weight:600}.dark .questionnaire-header h1{color:#fff}.questionnaire-description{color:#6c757d;font-size:1.1rem}.dark .questionnaire-description{color:#cbd5e1;margin:0 0 2rem;line-height:1.5}.overall-progress{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.progress-bar{width:100%;height:12px;background:#e9ecef;border-radius:6px;overflow:hidden;margin-bottom:1rem}.progress-fill{height:100%;background:linear-gradient(90deg,#007bff,#28a745);border-radius:6px;transition:width .5s ease}.progress-info{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:#495057}.stage-classification{background:#e7f3ff;border:1px solid #b3d9ff;border-radius:8px;padding:1.5rem;margin-top:1.5rem}.stage-classification.high{background:#d4edda;border-color:#c3e6cb}.stage-classification.medium{background:#fff3cd;border-color:#ffeaa7}.stage-classification.low{background:#f8d7da;border-color:#f5c6cb}.stage-classification h3{margin:0 0 1rem;color:#495057;font-size:1.25rem}.stage-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.stage-info strong{font-size:1.1rem;color:#2c3e50}.confidence{background:#007bff1a;color:#007bff;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:uppercase}.classification-reasoning{margin-top:1rem}.classification-reasoning summary{cursor:pointer;font-weight:600;color:#495057;padding:.5rem;border-radius:4px;background:#0000000d}.classification-reasoning ul{margin:.5rem 0 0 1rem;padding:0}.classification-reasoning li{margin:.25rem 0;font-size:.875rem;color:#6c757d}.questionnaire-navigation{background:#fff;border-bottom:1px solid #dee2e6;padding:1rem 0}.page-tabs{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#ced4da #f8f9fa}.page-tabs::-webkit-scrollbar{height:8px}.page-tabs::-webkit-scrollbar-track{background:#f8f9fa;border-radius:4px}.page-tabs::-webkit-scrollbar-thumb{background:#ced4da;border-radius:4px;border:1px solid #f8f9fa}.page-tabs::-webkit-scrollbar-thumb:hover{background:#adb5bd}.page-tab{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1rem;border:1px solid #dee2e6;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;min-width:120px;flex-shrink:0}.page-tab:hover:not(.disabled){border-color:#007bff;background:#f8f9fa}.page-tab.active{background:#007bff;color:#fff;border-color:#007bff}.page-tab.disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed;opacity:.6}.page-number{width:24px;height:24px;border-radius:50%;background:#e9ecef;color:#495057;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem}.page-tab.active .page-number{background:#fff3;color:#fff}.page-title{font-size:.875rem;font-weight:500;text-align:center;line-height:1.2}.questionnaire-content{max-width:1200px;margin:0 auto;padding:2rem}.questionnaire-controls{background:#fff;border-top:1px solid #dee2e6;padding:1.5rem 0;position:fixed;bottom:0;left:0;right:0;width:100%;box-shadow:0 -2px 4px #0000001a;z-index:1000}.controls-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.nav-button{padding:.75rem 1.5rem;border:1px solid #dee2e6;border-radius:6px;background:#fff;color:#495057;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;min-width:120px}.nav-button:hover:not(:disabled){border-color:#007bff;color:#007bff}.nav-button:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed;opacity:.6}.nav-button.next{background:#007bff;color:#fff;border-color:#007bff}.nav-button.next:hover:not(:disabled){background:#0056b3;border-color:#0056b3}.nav-button.complete{background:#28a745;border-color:#28a745}.nav-button.complete:hover:not(:disabled){background:#218838;border-color:#218838}.page-indicator{font-size:.875rem;color:#6c757d;font-weight:500}.validation-summary{text-align:center;margin-top:1rem;color:#dc3545;font-size:.875rem}@media (max-width: 768px){.header-content,.controls-content,.questionnaire-content{padding:0 1rem}.questionnaire-header h1{font-size:1.5rem}.questionnaire-description{font-size:1rem}.page-tabs{padding:0 1rem}.page-tab{min-width:100px;padding:.75rem}.stage-info{flex-direction:column;align-items:flex-start;gap:.5rem}.controls-content{flex-direction:column;gap:1rem}.nav-button{width:100%;max-width:200px}.progress-info{flex-direction:column;gap:.25rem;align-items:flex-start}}.dark .page-tabs{scrollbar-color:#4a5568 #2d3748!important}.dark .page-tabs::-webkit-scrollbar-track{background:#2d3748!important}.dark .page-tabs::-webkit-scrollbar-thumb{background:#4a5568!important;border:1px solid #2d3748!important}.dark .page-tabs::-webkit-scrollbar-thumb:hover{background:#718096!important}.dark .questionnaire-navigation{background:#1e293b!important;border-bottom:1px solid #475569!important}.dark .page-tab{background:#2d3748!important;border-color:#4a5568!important;color:#e2e8f0!important}.dark .page-tab:hover:not(.disabled){border-color:#63b3ed!important;background:#374151!important}.dark .page-tab.active{background:#3182ce!important;color:#fff!important;border-color:#3182ce!important}.dark .page-tab.disabled{background:#1a202c!important;color:#718096!important}.dark .page-number{background:#4a5568!important;color:#e2e8f0!important}.dark .page-tab.active .page-number{background:#fff3!important;color:#fff!important}@media (prefers-contrast: high){.questionnaire-header,.questionnaire-navigation,.questionnaire-controls,.page-tab,.nav-button,.overall-progress{border-color:#000}}@media print{.questionnaire-navigation,.questionnaire-controls{display:none}.phase1-questionnaire{background:#fff}.questionnaire-header{box-shadow:none;border-bottom:2px solid #000}.stage-classification{border:1px solid #000}}.phase2-technique-selection{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:2rem}.dark .phase2-technique-selection{background:linear-gradient(135deg,#1e293b,#334155)!important;color:#f8fafc!important}.phase2-technique-selection.loading,.phase2-technique-selection.error{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:50vh}.phase-header{background:#fff;border-radius:12px;padding:1rem;margin-bottom:.5rem;box-shadow:0 2px 8px #0000001a}.overall-progress{margin-bottom:1.5rem}.progress-info{font-size:.9rem;color:#718096;display:flex;align-items:center;gap:.5rem}.tactic-complete-indicator{background:#10b981;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;animation:checkmark-bounce .4s ease-out}@keyframes checkmark-bounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.stage-classification{padding:1rem;border-radius:8px;border-left:4px solid #4299e1}.stage-classification.high{background:#ebf8ff;border-color:#3182ce}.stage-classification.medium{background:#fef5e7;border-color:#f6ad55}.stage-classification.low{background:#f7fafc;border-color:#cbd5e0}.stage-classification h3{margin:0 0 .5rem;color:#2d3748;font-size:1.1rem}.stage-classification p{margin:0;color:#718096;font-size:.95rem}.tactic-progress{margin-bottom:1.5rem}.tactic-progress .progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.tactic-progress .progress-fill{height:100%;background:linear-gradient(90deg,#4299e1,#3182ce);transition:width .3s ease}.tactic-progress .progress-info{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:#718096}.tactic-controls{display:flex;justify-content:flex-end;align-items:center;margin-bottom:.5rem}.tactic-page{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a;min-height:400px}.dark .tactic-page{background:#374151!important;color:#f8fafc!important;box-shadow:0 2px 8px #0000004d!important}.tactic-info{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e2e8f0}.tactic-info h2{margin:0 0 1rem;color:#1a202c;font-size:1.8rem;font-weight:600}.tactic-description{color:#4a5568;line-height:1.6;font-size:1rem}.tactic-description p{margin-bottom:.75rem}.tactic-description p:last-child{margin-bottom:0}.tactic-description a{color:#3182ce;text-decoration:underline}.tactic-description a:hover{color:#2c5aa0;text-decoration:none}.no-current-tactic{text-align:center;padding:3rem 2rem;color:#718096}.no-current-tactic p{font-size:1.1rem;margin:0}.selection-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.view-controls{display:flex;gap:.5rem}.view-button{padding:.75rem 1.5rem;border:2px solid #e2e8f0;background:#fff;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.view-button:hover{border-color:#cbd5e0;background:#f7fafc}.view-button.active{border-color:#4299e1;background:#ebf8ff;color:#3182ce}.view-button:disabled{opacity:.5;cursor:not-allowed}.filter-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.filter-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#4a5568;cursor:pointer}.search-control{min-width:200px}.selection-content{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a;min-height:400px}.techniques-view{min-height:400px}.techniques-header{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.tactic-info h2{margin:0 0 .5rem;color:#1a202c;font-size:1.5rem;font-weight:600}.techniques-header .tactic-id{margin-left:0;margin-right:1rem}.not-relevant-badge{background:#fed7d7;color:#9b2c2c;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500}.techniques-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem}.technique-card{border:2px solid #e2e8f0;border-radius:8px;padding:1.5rem;background:#fff;transition:all .2s ease}.technique-card:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000001a}.technique-card.selected{border-color:#48bb78;background:#f0fff4}.technique-card.nested.n-code-technique{border-color:#8b5cf6!important;border-style:solid!important;border-width:1px!important;background-color:#a855f71a!important;background-image:none!important;color:inherit!important;position:relative}.technique-card.nested.n-code-technique:hover{border-color:#7c3aed!important;background-color:#a855f733!important;background-image:none!important;transform:translateY(-2px);transition:all .3s ease}.technique-card.nested.n-code-technique.selected{border-color:#059669!important;background-color:#10b98133!important;background-image:none!important;border-style:solid!important;border-width:2px!important}.dark .technique-card.nested.n-code-technique{background-color:#a855f726!important;border-color:#a855f7!important}.dark .technique-card.nested.n-code-technique:hover{background-color:#a855f740!important;border-color:#a855f7!important}.dark .technique-card.nested.n-code-technique.selected{background-color:#10b98140!important;border-color:#10b981!important}.n-code-indicator{display:inline-block;margin-left:.5rem;font-size:1rem;opacity:.95;background:#fff3;color:#fff;padding:.2rem .4rem;border-radius:4px;border:1px solid rgba(255,255,255,.3);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:.9}50%{opacity:.6}}.technique-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.technique-checkbox{display:flex;align-items:start;gap:.75rem;cursor:pointer;flex:1}.technique-checkbox input[type='"checkbox"']{margin:0;width:18px;height:18px;cursor:pointer}.checkmark{position:relative;min-width:18px;height:18px;margin-top:2px}.technique-info h4{margin:0 0 .25rem;color:#2d3748;font-size:1.1rem;font-weight:600;line-height:1.3}.technique-info .technique-id{color:#718096;font-size:.85rem;font-weight:500;margin-right:.5rem}.subtechnique-badge{background:#bee3f8;color:#2b6cb0;padding:.2rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;white-space:nowrap}.technique-description{margin-bottom:1rem}.technique-description p{color:#4a5568;font-size:.9rem;line-height:1.5;margin:0}.no-techniques{text-align:center;padding:3rem 2rem;color:#718096}.no-techniques p{font-size:1.1rem;margin:0}.validation-message{background:#fef3cd;border:2px solid #f59e0b;border-radius:8px;padding:1rem;margin-top:1rem;animation:fadeIn .3s ease-in}.validation-content{display:flex;align-items:flex-start;gap:.75rem}.validation-icon{font-size:1.2rem;margin-top:.1rem;flex-shrink:0}.validation-message p{margin:0;color:#92400e;font-size:.95rem;line-height:1.5}.validation-message strong{color:#78350f}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.phase2-technique-selection{padding:1rem}.phase-header{padding:.75rem}.selection-controls{flex-direction:column;align-items:stretch}.view-controls{justify-content:center}.filter-controls{justify-content:center;flex-wrap:wrap}.selection-content{padding:1.5rem}.tactics-grid,.techniques-grid{grid-template-columns:1fr}.techniques-header{flex-direction:column;align-items:stretch}.controls-content{flex-direction:column;text-align:center}.nav-button{width:100%;max-width:300px}}@media (max-width: 480px){.header-content h1{font-size:1.5rem}.phase-description{font-size:1rem}.tactic-card,.technique-card{padding:1rem}.technique-checkbox{gap:.5rem}}.selected-techniques-tile{background:#f0f9ff;border:2px solid #0ea5e9;border-radius:8px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 4px #0ea5e91a}.selected-techniques-tile h3{margin:0 0 1rem;color:#0c4a6e;font-size:1.2rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.selected-techniques-tile h3:before{content:"✓";background:#0ea5e9;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.selected-techniques-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem}.selected-technique-item{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #bae6fd;border-radius:6px;padding:.75rem;transition:all .2s ease}.selected-technique-item:hover{border-color:#0ea5e9;box-shadow:0 2px 4px #0ea5e926}.selected-technique-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.selected-technique-id{font-family:Courier New,monospace;font-size:.8rem;color:#0369a1;font-weight:600}.selected-technique-name{font-size:.9rem;color:#1e293b;font-weight:500}.selected-n-code-badge{background:#8b5cf6;color:#fff;padding:.2rem .5rem;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;align-self:flex-start}.remove-technique-button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid #ef4444;border-radius:50%;background:#fff;color:#ef4444;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s ease;margin-left:.5rem}.remove-technique-button:hover{background:#ef4444;color:#fff;transform:scale(1.1)}.technique-card.disabled{opacity:.4;cursor:not-allowed;filter:grayscale(50%)}.technique-card.disabled:hover{transform:none;box-shadow:0 2px 4px #0000001a}.technique-card.nested.n-code-technique.disabled{background-color:#6b7280!important;border-color:#4b5563!important}.technique-card.nested.n-code-technique.disabled:hover{background-color:#6b7280!important;border-color:#4b5563!important;transform:none}.technique-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.display-controls{display:flex;align-items:center;gap:.5rem}.control-hint{font-size:.875rem;color:#6c757d;font-style:italic}.description-toggle-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #dee2e6;border-radius:4px;background:#fff;color:#6c757d;font-size:.875rem;cursor:pointer;transition:all .2s ease}.description-toggle-button.sub{width:24px;height:24px;font-size:.75rem}.technique-card.nested{border:2px solid #e9ecef;border-radius:8px;background:#fff;overflow:hidden;transition:all .3s ease}.technique-card.nested.selected{border-color:#007bff;box-shadow:0 2px 8px #007bff26}.technique-main{position:relative}.technique-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.expand-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:2px solid #dee2e6;border-radius:6px;background:#fff;color:#495057;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s ease}.expand-button:hover{border-color:#007bff;color:#007bff}.expand-button.expanded{background:#007bff;border-color:#007bff;color:#fff;transform:rotate(0)}.sub-techniques{border-top:1px solid #e9ecef;background:#f8f9fa;padding:.5rem}.sub-technique-card{background:#fff;border:1px solid #dee2e6;border-radius:6px;margin-bottom:.5rem;padding:.75rem;transition:all .2s ease}.sub-technique-card:last-child{margin-bottom:0}.sub-technique-card:hover{border-color:#007bff;box-shadow:0 1px 4px #007bff1a}.sub-technique-card.selected{background:#f0f8ff;border-color:#007bff}.sub-technique-header{display:flex;align-items:flex-start;justify-content:space-between}.sub-technique-checkbox{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;flex:1}.sub-technique-info h5{margin:0 0 .25rem;font-size:.95rem;font-weight:600;color:#212529;line-height:1.3}.sub-technique-id{font-size:.8rem;color:#6c757d;font-weight:500;font-family:Courier New,monospace}.sub-technique-description{margin-top:.5rem;padding:.5rem;background:#f8f9fa;border-radius:4px;font-size:.875rem;line-height:1.4}.sub-technique-description p{margin:0}.technique-description,.sub-technique-description{font-size:.875rem;line-height:1.5;color:#495057}.technique-description p,.sub-technique-description p{margin:0 0 .5rem}.technique-description p:last-child,.sub-technique-description p:last-child{margin-bottom:0}.technique-description ul,.sub-technique-description ul{margin:.5rem 0;padding-left:1.5rem}.technique-description li,.sub-technique-description li{margin-bottom:.25rem}.technique-description code,.sub-technique-description code{background:#f8f9fa;padding:.125rem .25rem;border-radius:3px;font-family:Courier New,monospace;font-size:.8rem}.technique-description a,.sub-technique-description a{color:#007bff;text-decoration:underline;transition:color .2s ease}.technique-description a:hover,.sub-technique-description a:hover{color:#0056b3;text-decoration:none}.technique-description a:visited,.sub-technique-description a:visited{color:#6f42c1}.technique-description a[target=_blank]:after,.sub-technique-description a[target=_blank]:after{content:" 🔗";font-size:.75rem;opacity:.7}@media (max-width: 768px){.technique-controls{flex-direction:column;align-items:stretch}.display-controls{justify-content:center}.technique-actions{margin-left:0;margin-top:.5rem}.expand-button{width:28px;height:28px;font-size:1rem}.sub-techniques{padding:.25rem}.sub-technique-card{padding:.5rem}}.technique-card.clickable{cursor:pointer;transition:all .2s ease}.technique-card.clickable:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026;background-color:#f8f9fa}.technique-card.selected{background-color:#e3f2fd;border-color:#2196f3}.technique-card.clickable:focus{outline:2px solid #007bff;outline-offset:2px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.sub-technique-modal{background:#fff;border-radius:12px;max-width:800px;max-height:90vh;width:100%;overflow:hidden;box-shadow:0 20px 40px #0003}.dark .sub-technique-modal{background:#374151!important;color:#f8fafc!important;box-shadow:0 20px 40px #0006!important}.dark .modal-header{background:transparent!important;border-bottom-color:#4b5563!important}.dark .modal-header h3{color:#f8fafc!important}.dark .modal-close{color:#9ca3af!important}.dark .modal-close:hover{background:#4b5563!important;color:#f8fafc!important}.dark .modal-content{background:transparent!important}.dark .modal-sub-technique-button{color:#f8fafc!important}.dark .modal-sub-technique-button:hover{background-color:#4b5563!important}.dark .modal-sub-technique-info h5{color:#f8fafc!important}.dark .modal-sub-technique-id{color:#9ca3af!important}.dark .description-toggle-button.modal{background:#4b5563!important;color:#f8fafc!important}.dark .description-toggle-button.modal:hover{background:#6b7280!important}.dark .modal-sub-technique-description{background:#1f2937!important;border-color:#374151!important;color:#e5e7eb!important}.dark .modal-no-match-button{background:#4b5563!important;border-color:#6b7280!important;color:#f8fafc!important}.dark .modal-no-match-button:hover{background:#374151!important;border-color:#9ca3af!important}.dark .modal-no-match-content h5{color:#f8fafc!important}.dark .modal-no-match-description{color:#d1d5db!important}.dark .selected-techniques-list,.dark .selected-technique-info,.dark .selected-techniques-tile,.dark .selected-technique-item{background:transparent!important}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e9ecef;background:#f8f9fa}.modal-header h3{margin:0;color:#2c3e50;font-size:1.25rem}.modal-close{background:none;border:none;font-size:2rem;color:#6c757d;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-close:hover{background:#dee2e6;color:#495057}.modal-content{padding:1.5rem;max-height:calc(90vh - 120px);overflow-y:auto}.modal-description{color:#6c757d;margin:0 0 1.5rem;font-size:.9rem;line-height:1.5}.sub-techniques-list{display:flex;flex-direction:column;gap:1rem}.modal-sub-technique-card{border:1px solid #e9ecef;border-radius:8px;transition:all .2s ease}.modal-sub-technique-card:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff1a}.modal-sub-technique-header{display:flex;align-items:center;justify-content:space-between}.modal-sub-technique-button{flex:1;background:none;border:none;padding:1rem;text-align:left;cursor:pointer;transition:background-color .2s ease}.modal-sub-technique-button:hover{background-color:#f8f9fa}.modal-sub-technique-info h5{margin:0 0 .25rem;color:#2c3e50;font-size:1rem;font-weight:600}.modal-sub-technique-id{font-size:.8rem;color:#6c757d;font-weight:500;font-family:monospace}.description-toggle-button.modal{padding:.5rem;margin:.5rem;background:none;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s ease;flex-shrink:0}.description-toggle-button.modal:hover{background:#f8f9fa;border-color:#007bff}.description-toggle-button.modal.expanded{background:#007bff;color:#fff;border-color:#007bff}.modal-sub-technique-description{padding:1rem;border-top:1px solid #e9ecef;background:#f8f9fa;font-size:.875rem;line-height:1.5;color:#495057}.modal-no-match-option{border-top:2px solid #e9ecef;padding-top:1rem}.modal-no-match-button{width:100%;background:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s ease}.modal-no-match-button:hover{background:#e9ecef;border-color:#6c757d}.modal-no-match-content h5{margin:0 0 .5rem;color:#495057;font-size:1rem;font-weight:600}.modal-no-match-description{font-size:.875rem;color:#6c757d;display:block}@media (max-width: 768px){.modal-overlay{padding:.5rem}.sub-technique-modal{max-height:95vh}.modal-header,.modal-content{padding:1rem}.modal-sub-technique-button{padding:.75rem}}.phase3-software-selection{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:2rem}.dark .phase3-software-selection{background:linear-gradient(135deg,#1e293b,#334155)!important;color:#f8fafc!important}.dark .category-page{background:transparent!important}.dark .software-card.selected{border-color:#48bb78!important;background:#48bb7833!important}.dark .group-card.selected{border-color:#805ad5!important;background:#805ad533!important}.dark .group-card.meta-group.selected{border-color:#d97706!important;background:#d9770633!important}.dark .alias-tag{background:transparent!important}.phase3-software-selection.loading,.phase3-software-selection.error{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:50vh}.loading-container,.error-message{text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a}.dark .loading-container,.dark .error-message{background:#374151!important;color:#f8fafc!important;box-shadow:0 4px 6px #0000004d!important}.category-progress{margin-top:1rem}.progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:.75rem}.progress-fill{height:100%;background:linear-gradient(90deg,#4299e1,#3182ce);transition:width .3s ease;border-radius:4px}.progress-info{text-align:center;font-size:1.1rem;font-weight:600;color:#2d3748}.category-page{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.category-header{margin-bottom:2rem}.category-header h2{color:#1a202c;margin-bottom:.75rem;font-size:1.8rem;font-weight:700;border-bottom:3px solid #4299e1;padding-bottom:.5rem}.category-description{color:#718096;font-size:1.1rem;margin-bottom:1.5rem;line-height:1.6}.category-description p{margin:0 0 .5rem}.search-control{margin-bottom:1.5rem}.search-input{width:100%;padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.95rem;outline:none;transition:border-color .2s ease}.filter-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#4a5568;cursor:pointer;white-space:nowrap}.filter-checkbox input:disabled+span{opacity:.5}.sort-control{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#4a5568}.sort-control label{white-space:nowrap}.sort-control select{padding:.5rem;border:2px solid #e2e8f0;border-radius:6px;outline:none;cursor:pointer}.software-sections{margin-top:1.5rem}.recommended-software{margin-bottom:2rem}.recommended-software h3{color:#2d3748;margin-bottom:.5rem;font-size:1.4rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.recommended-software h3:before{content:"⭐";font-size:1.2rem}.recommendation-summary{font-size:1rem;margin-bottom:1.5rem;padding:.75rem;background:#f0fff4;border:1px solid #9ae6b4;border-radius:6px;color:#276749;text-align:center}.all-software{border:none}.all-software summary{font-size:1.4rem;font-weight:600;color:#2d3748;cursor:pointer;padding:1rem;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;margin-bottom:1.5rem;transition:all .2s ease;list-style:none;display:flex;align-items:center;justify-content:space-between}.all-software summary:hover{background:#edf2f7;border-color:#cbd5e0}.all-software summary:after{content:"▼";font-size:.8rem;color:#718096;transition:transform .2s ease}.all-software[open] summary:after{transform:rotate(180deg)}.all-software[open] summary{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}.all-software .items-grid{border:2px solid #e2e8f0;border-top:none;border-radius:0 0 8px 8px;padding:1.5rem;background:#fff}.items-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.software-card{border:2px solid #e2e8f0;border-radius:8px;padding:1rem;background:#fff;transition:all .2s ease;position:relative}.software-card.clickable{cursor:pointer}.software-card:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000001a}.software-card.selected{border-color:#48bb78;background:#f0fff4}.software-card.tool{border-left:4px solid #4299e1}.software-card.malware{border-left:4px solid #f56565}.software-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;position:relative}.software-info{flex:1}.software-info h4{margin:0;color:#2d3748;font-size:1.1rem;font-weight:600;line-height:1.3}.software-id{color:#718096;font-size:.9rem;font-weight:400}.software-description{margin-bottom:1rem}.software-description p{color:#4a5568;font-size:.9rem;line-height:1.5;margin:0}.software-aliases,.software-platforms,.related-techniques{margin-bottom:.75rem}.aliases-label,.platforms-label,.techniques-label{color:#718096;font-size:.8rem;font-weight:500;margin-right:.5rem}.aliases-list,.platforms-list{display:flex;gap:.25rem;flex-wrap:wrap;margin-top:.25rem}.alias-tag,.platform-tag{background:#f7fafc;color:#4a5568;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.alias-tag{background:#ebf8ff;color:#3182ce}.related-techniques{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#f7fafc;border-radius:6px;font-size:.85rem}.techniques-count{font-weight:600;color:#4299e1}.group-card{border:2px solid #e2e8f0;border-radius:8px;padding:1rem;background:#fff;transition:all .2s ease;border-left:4px solid #805ad5}.group-card.clickable{cursor:pointer}.group-card:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000001a}.group-card.selected{border-color:#805ad5;background:#faf5ff}.group-card.meta-group{border-color:#ff9500;border-style:dashed;background:#fef5e7;border-left-color:#ff9500}.group-card.meta-group:hover{border-color:#d97706;box-shadow:0 2px 4px #d9770633}.group-card.meta-group.selected{border-color:#d97706;background:#fef5e7;border-style:solid;border-left-color:#d97706}.meta-group-indicator{display:inline-block;margin-right:.5rem;font-size:.875rem;opacity:.8}.group-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;position:relative}.group-info{flex:1}.group-checkbox input[type=checkbox]{margin:2px 0 0;width:18px;height:18px;cursor:pointer}.group-info h4{margin:0;color:#2d3748;font-size:1.1rem;font-weight:600;line-height:1.3}.group-id{color:#718096;font-size:.9rem;font-weight:400}.group-description{margin-bottom:1rem}.group-description p{color:#4a5568;font-size:.9rem;line-height:1.5;margin:0}.group-aliases{margin-bottom:.75rem}mark{background:#fef5e7;color:#d69e2e;padding:.1rem .2rem;border-radius:2px}.no-items{text-align:center;padding:3rem 2rem;color:#718096}.no-items p{font-size:1.1rem;margin:0 0 1rem}.category-indicator{font-size:.9rem;color:#718096;font-weight:500;text-align:center;padding:.5rem 1rem;background:#f7fafc;border-radius:6px;border:1px solid #e2e8f0}@media (max-width: 768px){.phase3-software-selection{padding:1rem}.phase-header{padding:1.5rem}.selection-controls{padding:1rem}.category-header h2{font-size:1.5rem}.category-description{font-size:1rem}.search-control{min-width:unset}.category-page{padding:1.5rem}.all-software .items-grid{padding:1rem}.items-grid{grid-template-columns:1fr}.progress-stats{justify-content:center}.controls-content{flex-direction:column;text-align:center}.nav-button{width:100%;max-width:300px}}@media (max-width: 480px){.header-content h1{font-size:1.5rem}.phase-description{font-size:1rem}.software-card,.group-card{padding:1rem}.software-header{flex-direction:column;gap:1rem}}.software-actions,.group-actions{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.description-toggle-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #cbd5e0;background:#fff;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s ease;color:#718096;flex-shrink:0;box-shadow:0 1px 3px #0000001a}.description-toggle-button:hover{border-color:#007bff;color:#007bff;background:#f8f9fa}.description-toggle-button.expanded{background:#007bff;border-color:#007bff;color:#fff}.description-toggle-button:focus{outline:2px solid #007bff;outline-offset:2px}.software-description .markdown-content,.group-description .markdown-content{font-size:.9rem;line-height:1.5;color:#4a5568}.software-description .markdown-content p,.group-description .markdown-content p{margin-bottom:.75rem}.software-description .markdown-content p:last-child,.group-description .markdown-content p:last-child{margin-bottom:0}.software-description .markdown-content a,.group-description .markdown-content a{color:#007bff;text-decoration:underline}.software-description .markdown-content a:hover,.group-description .markdown-content a:hover{color:#0056b3;text-decoration:none}.software-description .markdown-content a:visited,.group-description .markdown-content a:visited{color:#6f42c1}.software-description .markdown-content a[target=_blank]:after,.group-description .markdown-content a[target=_blank]:after{content:" 🔗";font-size:.75rem;opacity:.7}.platform-filters{background:#fff;border-radius:8px;padding:1.5rem;margin-top:1rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0}.platform-filters h4{margin:0 0 1rem;color:#2d3748;font-size:1rem;font-weight:600}.platform-toggles{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.platform-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.875rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.platform-toggle:hover{background:#edf2f7;border-color:#cbd5e0}.platform-toggle input[type=checkbox]{margin:0;cursor:pointer}.platform-toggle input[type=checkbox]:checked+.platform-label{font-weight:600;color:#3182ce}.platform-toggle:has(input:checked){background:#ebf8ff;border-color:#4299e1}.platform-label{color:#4a5568;transition:all .2s ease}.platform-count{color:#718096;font-size:.75rem;font-weight:500}.clear-platforms-btn{padding:.5rem 1rem;background:#fed7d7;color:#c53030;border:1px solid #feb2b2;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s ease}.clear-platforms-btn:hover{background:#fecaca;border-color:#f56565}.clear-platforms-btn:focus{outline:2px solid #f56565;outline-offset:2px}.technique-filters{background:#fff;border-radius:8px;padding:1.5rem;margin-top:1rem;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0}.technique-filters h4{margin:0 0 1rem;color:#2d3748;font-size:1rem;font-weight:600}.technique-toggles{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;max-height:200px;overflow-y:auto}.technique-toggle{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.875rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.technique-toggle:hover{background:#edf2f7;border-color:#cbd5e0}.technique-toggle input[type=checkbox]{margin:0;cursor:pointer;flex-shrink:0}.technique-toggle:has(input:checked){background:#ebf8ff;border-color:#4299e1}.technique-id{font-family:Monaco,Consolas,monospace;font-weight:600;color:#3182ce;background:#e6f3ff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;flex-shrink:0}.technique-toggle:has(input:checked) .technique-id{background:#3182ce;color:#fff}.technique-label{flex:1;color:#2d3748;font-weight:500}.technique-count{color:#718096;font-size:.8rem;font-weight:500;flex-shrink:0}.technique-name{color:#4a5568;font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.technique-toggle:has(input:checked) .technique-name{color:#2d3748;font-weight:600}.technique-count{color:#718096;font-size:.75rem;font-weight:500;flex-shrink:0}.clear-techniques-btn{padding:.5rem 1rem;background:#fed7d7;color:#c53030;border:1px solid #feb2b2;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s ease}.clear-techniques-btn:hover{background:#fecaca;border-color:#f56565}.clear-techniques-btn:focus{outline:2px solid #f56565;outline-offset:2px}.search-status{display:flex;align-items:center;justify-content:space-between;margin-top:.75rem;padding:.5rem .75rem;background:#f0f8ff;border:1px solid #b3d9ff;border-radius:6px;font-size:.9rem;color:#1e40af}.clear-search-btn{background:none;border:none;color:#6b7280;cursor:pointer;padding:.25rem;border-radius:3px;font-size:.8rem;transition:all .2s ease}.clear-search-btn:hover{background:#e5e7eb;color:#374151}.phase4-evidence-collection{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:2rem}.phase4-evidence-collection.loading,.phase4-evidence-collection.error,.phase4-evidence-collection.empty{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:50vh}.loading-container,.error-message,.empty-state{text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:500px}.dark .loading-container,.dark .error-message,.dark .empty-state{background:#374151!important;color:#f8fafc!important;box-shadow:0 4px 6px #0000004d!important}.loading-text{margin:0;font-size:1.1rem;color:#4a5568}.dark .loading-text{color:#e2e8f0!important}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.empty-state button{margin-top:1rem;padding:.75rem 1.5rem;background:#4299e1;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.empty-state button:hover{background:#3182ce}.phase-header{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.header-content h1{color:#1a202c;margin-bottom:.5rem;font-size:2rem;font-weight:700}.phase-description{color:#718096;font-size:1.1rem;margin-bottom:1.5rem;line-height:1.6}.overall-progress{margin-bottom:1rem}.progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#4299e1,#3182ce);transition:width .3s ease}.progress-info{font-size:.9rem;color:#718096;margin-bottom:.5rem}.required-progress{font-size:.85rem}.required-status{padding:.25rem .75rem;border-radius:20px;font-weight:500}.required-status.complete{background:#c6f6d5;color:#22543d}.required-status.incomplete{background:#fed7d7;color:#9b2c2c}.evidence-controls{background:#fff;border-radius:12px;padding:1.5rem 2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a}.filter-controls{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.category-filter,.search-control{display:flex;align-items:center;gap:.5rem}.category-filter label{font-weight:500;color:#4a5568;white-space:nowrap}.category-filter select{padding:.5rem;border:2px solid #e2e8f0;border-radius:6px;outline:none;cursor:pointer;min-width:200px}.search-control{flex:1;min-width:250px}.search-input{width:100%;padding:.5rem 1rem;border:2px solid #e2e8f0;border-radius:6px;outline:none;transition:border-color .2s ease}.search-input:focus{border-color:#4299e1}.evidence-content{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000001a;min-height:400px}.questions-list{display:flex;flex-direction:column;gap:3rem}.tactic-section{margin-bottom:2rem}.tactic-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;box-shadow:0 4px 12px #667eea4d}.tactic-title{display:flex;align-items:center;gap:1rem;margin:0;font-size:1.4rem;font-weight:700}.tactic-name{font-size:1.3rem;font-weight:700}.tactic-id{font-family:Monaco,Consolas,monospace;font-size:.9rem;font-weight:500;opacity:.8;margin-left:.75rem}.tactic-progress{background:#ffffff26;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tactic-questions{display:flex;flex-direction:column;gap:1.5rem;padding-left:1rem;border-left:4px solid #667eea}.evidence-question-card{border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;background:#fafafa;transition:all .2s ease}.evidence-question-card:hover{border-color:#cbd5e0;box-shadow:0 4px 8px #0000001a}.question-header{margin-bottom:1.5rem}.question-header h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin-bottom:.5rem;line-height:1.4}.question-explanation{color:#4a5568;font-size:.95rem;line-height:1.5;margin-bottom:1rem}.question-meta{display:flex;gap:.75rem;flex-wrap:wrap}.evidence-type-badge{background:#bee3f8;color:#2b6cb0;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500}.required-badge{background:#fed7d7;color:#9b2c2c;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500}.question-input{background:#fff;padding:1.5rem;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:1.5rem}.evidence-input{margin-bottom:1rem}.additional-inputs{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{font-size:.9rem;font-weight:500;color:#4a5568}.input-group textarea,.input-group input{padding:.75rem;border:2px solid #e2e8f0;border-radius:6px;outline:none;font-size:.95rem;transition:border-color .2s ease}.input-group textarea:focus,.input-group input:focus{border-color:#4299e1}.input-group textarea{resize:vertical;font-family:inherit}.add-evidence-button{padding:.75rem 1.5rem;background:#48bb78;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;align-self:flex-start}.add-evidence-button:hover:not(:disabled){background:#38a169;transform:translateY(-1px)}.add-evidence-button:disabled{background:#a0aec0;cursor:not-allowed;transform:none}.evidence-items{border-top:2px solid #e2e8f0;padding-top:1.5rem}.evidence-items h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.evidence-items-list{display:flex;flex-direction:column;gap:1rem}.evidence-item-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;transition:all .2s ease}.evidence-item-card:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000000d}.evidence-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.evidence-meta{display:flex;gap:.75rem;flex-wrap:wrap}.evidence-meta span{font-size:.8rem;padding:.2rem .5rem;border-radius:4px}.evidence-type{background:#ebf8ff;color:#3182ce;font-weight:500}.technique-id{background:#f7fafc;color:#4a5568;font-weight:500}.timestamp{background:#f0fff4;color:#38a169}.evidence-actions{display:flex;gap:.5rem}.remove-button{width:24px;height:24px;border:none;background:#fed7d7;color:#e53e3e;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:all .2s ease}.remove-button:hover{background:#feb2b2;transform:scale(1.1)}.evidence-content{margin-bottom:1rem}.evidence-value{background:#f7fafc;padding:.75rem;border-radius:6px;border-left:4px solid #4299e1;font-family:Monaco,Consolas,monospace;font-size:.9rem;color:#2d3748;margin-bottom:1rem;word-break:break-all}.evidence-description label{display:block;font-size:.85rem;font-weight:500;color:#4a5568;margin-bottom:.25rem}.evidence-description textarea{width:100%;padding:.5rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.9rem;resize:vertical;outline:none}.evidence-description textarea:focus{border-color:#4299e1}.evidence-metadata{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;margin-bottom:.75rem}.confidence-control,.source-control,.quality-score{display:flex;align-items:center;gap:.5rem}.confidence-control label,.source-control label,.quality-score label{font-size:.85rem;font-weight:500;color:#4a5568;white-space:nowrap}.confidence-control select{padding:.25rem .5rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.85rem;cursor:pointer;font-weight:500}.source-options{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.25rem}.source-option{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border:2px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s ease;background:#fff;font-size:.85rem;font-weight:500;color:#4a5568}.source-option:hover{border-color:#cbd5e0;background:#f7fafc}.source-option input[type=radio]{margin:0;width:16px;height:16px;cursor:pointer}.source-option input[type=radio]:checked+span{color:#3182ce;font-weight:600}.source-option:has(input[type=radio]:checked){border-color:#4299e1;background:#ebf8ff}.required-indicator{color:#e53e3e;font-weight:700;margin-left:.25rem}.validation-message{color:#e53e3e;font-size:.8rem;margin-top:.5rem;font-weight:500}.score-value{font-weight:600;font-size:.9rem}.evidence-attachments{border-top:1px solid #e2e8f0;padding-top:.75rem}.evidence-attachments label{display:block;font-size:.85rem;font-weight:500;color:#4a5568;margin-bottom:.5rem}.attachments-list{display:flex;flex-direction:column;gap:.25rem}.attachment-item{display:flex;gap:.5rem;align-items:center;font-size:.85rem}.attachment-name{color:#3182ce;font-weight:500}.attachment-size{color:#718096}.no-questions{text-align:center;padding:3rem 2rem;color:#718096}.no-questions p{font-size:1.1rem;margin:0}.phase-controls{background:#fff;border-radius:12px;padding:1.5rem 2rem;box-shadow:0 2px 8px #0000001a;position:sticky;bottom:0;z-index:10}.validation-summary{margin-top:1rem;padding:.75rem;background:#fed7d7;color:#9b2c2c;border-radius:6px;text-align:center}.validation-summary p{margin:0;font-size:.9rem}@media (max-width: 768px){.phase4-evidence-collection{padding:1rem}.phase-header{padding:1.5rem}.evidence-controls{padding:1rem}.filter-controls{flex-direction:column;align-items:stretch}.category-filter,.search-control{width:100%}.category-filter select{min-width:unset}.evidence-content{padding:1.5rem}.tactic-header{flex-direction:column;align-items:stretch;gap:1rem;padding:1rem}.tactic-title{flex-direction:column;align-items:flex-start;gap:.5rem;font-size:1.2rem}.tactic-questions{padding-left:.5rem}.evidence-question-card,.question-input{padding:1rem}.additional-inputs{gap:.75rem}.evidence-header{flex-direction:column;gap:.5rem;align-items:stretch}.evidence-meta{justify-content:flex-start}.evidence-actions{justify-content:flex-end}.evidence-metadata{flex-direction:column;align-items:stretch;gap:.75rem}.controls-content{flex-direction:column;text-align:center}.nav-button{width:100%;max-width:300px}}@media (max-width: 480px){.header-content h1{font-size:1.5rem}.phase-description{font-size:1rem}.question-header h3{font-size:1.1rem}.evidence-question-card,.question-input{padding:.75rem}}.question-card{margin-bottom:1.5rem;padding:1.25rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.question-card:hover{border-color:#cbd5e0;box-shadow:0 2px 6px #00000026}.question-card--sub{margin-left:2rem;margin-top:1rem;border-left:4px solid #4299e1;background:#f7fafc;position:relative}.question-card--sub:before{content:"└";position:absolute;left:-2rem;top:1.25rem;color:#a0aec0;font-size:1.2rem;font-weight:700}.dark .question-card{background:#2d3748;border-color:#4a5568;color:#fff}.dark .question-card:hover{border-color:#718096}.dark .question-card--sub{background:#1a202c;border-left-color:#63b3ed}.dark .required-status.complete{background:#22543d;color:#9ae6b4}.dark .required-status.incomplete{background:#742a2a;color:#feb2b2}.phase-section-heading{font-size:1.5rem;font-weight:700;color:#2d3748;margin:2rem 0 1rem;padding:.75rem 0;border-bottom:3px solid #4299e1;position:relative}.phase-section-heading:before{content:"";position:absolute;left:0;bottom:-3px;width:60px;height:3px;background:#48bb78;border-radius:2px}.dark .phase-section-heading{color:#e2e8f0!important;border-bottom-color:#63b3ed!important}.dark .phase-section-heading:before{background:#68d391!important}.phase-controls{background:#fff;border-radius:12px;padding:1.5rem 2rem;box-shadow:0 2px 8px #0000001a;position:sticky;bottom:0;z-index:10;margin-top:2rem}.controls-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.nav-button{padding:.75rem 2rem;border:2px solid #4299e1;background:#fff;color:#3182ce;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.nav-button:hover:not(:disabled){background:#4299e1;color:#fff}.nav-button:disabled{opacity:.5;cursor:not-allowed;border-color:#e2e8f0;color:#a0aec0}.nav-button.next:not(:disabled){background:#4299e1;color:#fff}.nav-button.next:hover:not(:disabled){background:#3182ce}.nav-button.next.export{background:#48bb78;border-color:#48bb78;color:#fff}.nav-button.next.export:hover{background:#38a169;border-color:#38a169}.phase-indicator{font-size:.9rem;color:#718096;font-weight:500}.dark .phase-controls{background:#2d3748!important;box-shadow:0 2px 8px #0000004d!important}.dark .nav-button{background:#2d3748!important;border-color:#4299e1!important;color:#63b3ed!important}.dark .nav-button:hover:not(:disabled){background:#4299e1!important;color:#fff!important}.dark .nav-button:disabled{background:#1a202c!important;border-color:#4a5568!important;color:#718096!important}.dark .nav-button.next:not(:disabled){background:#4299e1!important;color:#fff!important}.dark .nav-button.next:hover:not(:disabled){background:#3182ce!important}.dark .nav-button.next.export{background:#48bb78!important;border-color:#48bb78!important;color:#fff!important}.dark .nav-button.next.export:hover{background:#38a169!important;border-color:#38a169!important}.dark .phase-indicator{color:#a0aec0!important}.app{min-height:100vh;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.app:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.app-container{margin-left:auto;margin-right:auto;max-width:100%;padding-left:1rem;padding-right:1rem}@media (min-width: 640px){.app-container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width: 1024px){.app-container{padding-left:2rem;padding-right:2rem}}.app-container{display:flex;min-height:100vh;flex-direction:column}.app-header{border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.app-header:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.app-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem}.app-title{font-size:1.25rem;line-height:1.75rem;font-weight:700;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.app-title:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.app-subtitle{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.app-subtitle:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.app-main{flex:1 1 0%;padding-top:1.5rem;padding-bottom:1.5rem}.phase-container{margin-left:auto;margin-right:auto;max-width:56rem}.phase-header{margin-bottom:2rem}.phase-title{margin-bottom:.5rem;font-size:1.5rem;line-height:2rem;font-weight:700;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.phase-title:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.phase-description{font-size:1rem;line-height:1.5rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.phase-description:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.card-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1.5rem}@media (min-width: 768px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.card-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.question-container>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.question-item{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.question-item:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.question-item:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.question-item:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.question-title{margin-bottom:.75rem;font-size:1.125rem;line-height:1.75rem;font-weight:500;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.question-title:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.question-description{margin-bottom:1rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.question-description:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.form-control{width:100%}.button-group{display:flex;gap:.75rem}.button-group-right{display:flex;justify-content:flex-end;gap:.75rem}.progress-container{margin-bottom:1.5rem}.progress-bar{height:.5rem;width:100%;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.progress-bar:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.progress-fill{height:.5rem;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(14 165 233 / var(--tw-bg-opacity, 1));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.status-complete{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.status-incomplete{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.status-incomplete:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.status-error{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.nav-container{margin-top:2rem;border-top-width:1px;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));padding-top:1.5rem}.nav-container:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.nav-buttons{display:flex;align-items:center;justify-content:space-between}.technique-card{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.technique-card:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.technique-card:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.technique-card:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.technique-card{cursor:pointer;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.technique-card:hover{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1));--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.technique-card.selected{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1));background-color:rgb(14 165 233 / var(--tw-bg-opacity, 1));--tw-bg-opacity: .1}.technique-header{margin-bottom:.75rem;display:flex;align-items:flex-start;justify-content:space-between}.technique-id{display:inline-flex;align-items:center;border-radius:9999px;padding:.125rem .625rem;font-weight:500;background-color:rgb(14 165 233 / var(--tw-bg-opacity, 1));--tw-bg-opacity: .2;--tw-text-opacity: 1;color:rgb(14 165 233 / var(--tw-text-opacity, 1));font-size:.75rem;line-height:1rem}.technique-name{font-weight:500;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.technique-name:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.technique-description{margin-top:.5rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.technique-description:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.evidence-card{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.evidence-card:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.evidence-card:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.evidence-card:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.evidence-header{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between}.evidence-type{display:inline-flex;align-items:center;border-radius:9999px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1));--tw-bg-opacity: .2;--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.summary-section{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.summary-section:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.summary-section:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.summary-section:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.summary-section{margin-bottom:1.5rem}.summary-title{margin-bottom:1rem;font-size:1.125rem;line-height:1.75rem;font-weight:600;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.summary-title:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.summary-stats{margin-bottom:1.5rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media (min-width: 768px){.summary-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.stat-item{text-align:center}.stat-number{font-size:1.5rem;line-height:2rem;font-weight:700;--tw-text-opacity: 1;color:rgb(14 165 233 / var(--tw-text-opacity, 1))}.stat-label{font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.stat-label:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.export-container>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.export-option{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.export-option:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.export-option:is(.dark *){--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.export-option:hover:is(.dark *){--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.export-option{cursor:pointer;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.export-option:hover{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1))}.export-option.selected{--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1));background-color:rgb(14 165 233 / var(--tw-bg-opacity, 1));--tw-bg-opacity: .1}.loading-spinner{height:2rem;width:2rem}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner{animation:spin 1s linear infinite;border-radius:9999px;border-bottom-width:2px;--tw-border-opacity: 1;border-color:rgb(14 165 233 / var(--tw-border-opacity, 1))}.loading-text{text-align:center;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.loading-text:is(.dark *){--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.error-container{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1));background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1));--tw-bg-opacity: .2;padding:1rem}.error-text{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.success-container{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(22 101 52 / var(--tw-border-opacity, 1));background-color:rgb(20 83 45 / var(--tw-bg-opacity, 1));--tw-bg-opacity: .2;padding:1rem}.success-text{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}@media (max-width: 640px){.app-container{padding-left:1rem;padding-right:1rem}.phase-container{padding-left:0;padding-right:0}.card-grid{grid-template-columns:repeat(1,minmax(0,1fr))}.button-group{flex-direction:column}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .5s ease-in-out}@keyframes slideUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.slide-up{animation:slideUp .3s ease-out}.phase-guard-loading{display:flex;align-items:center;justify-content:center;min-height:50vh;flex-direction:column}.phase-guard-loading .loading-container{text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:400px}.phase-guard-loading .loading-content{margin-top:1rem}.phase-guard-loading .loading-title{font-size:1.1rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.phase-guard-loading .loading-reason{font-size:.9rem;color:#6b7280;margin:0;line-height:1.4}.phase-guard-loading .spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
