@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-x-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-blue-500:oklch(62.3% .214 259.815);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--radius-md:.375rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.m-2{margin:calc(var(--spacing) * 2)}.m-3{margin:calc(var(--spacing) * 3)}.mx-5{margin-inline:calc(var(--spacing) * 5)}.my-3{margin-block:calc(var(--spacing) * 3)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.ml-3{margin-left:calc(var(--spacing) * 3)}.flex{display:flex}.h-4{height:calc(var(--spacing) * 4)}.h-20{height:calc(var(--spacing) * 20)}.w-52{width:calc(var(--spacing) * 52)}.w-64{width:calc(var(--spacing) * 64)}.w-fit{width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.min-w-80{min-width:calc(var(--spacing) * 80)}.min-w-96{min-width:calc(var(--spacing) * 96)}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.divide-x>:not(:last-child)){--tw-divide-x-reverse:0;border-inline-style:var(--tw-border-style);border-inline-start-width:calc(1px * var(--tw-divide-x-reverse));border-inline-end-width:calc(1px * calc(1 - var(--tw-divide-x-reverse)))}:where(.divide-gray-800>:not(:last-child)){border-color:var(--color-gray-800)}.overflow-x-scroll{overflow-x:scroll}.rounded{border-radius:.25rem}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-gray-800{border-color:var(--color-gray-800)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-900{background-color:var(--color-gray-900)}.p-1{padding:calc(var(--spacing) * 1)}.p-4{padding:calc(var(--spacing) * 4)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pl-1{padding-left:calc(var(--spacing) * 1)}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-red-500{color:var(--color-red-500)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}}:root{color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#242424;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}a{color:#646cff;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:#535bf2}body{place-items:center;min-width:320px;min-height:100vh;margin:0;display:flex}button{cursor:pointer;background-color:#1a1a1a;border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}html,body,#root{margin:0;padding:0;height:100%;width:100%}.app{min-height:100vh;width:100%;padding:2rem;box-sizing:border-box;background:#1e1e1e;color:#fff}.app-title{text-align:center;margin-bottom:2rem}.dashboard-layout{display:grid;grid-template-columns:320px 1fr;gap:2rem;align-items:start}.results-column{display:flex;flex-direction:column;gap:1.5rem}.debug-section{margin-top:2rem;padding:1rem;border:1px dashed #555}.algorithm-result-card{display:flex;border:1px solid #444;border-radius:6px;background:#111;overflow:hidden}.algorithm-result-facts{border-right:1px solid #444}.algorithm-result-schedule{flex:1;padding:1rem}.algorithm-schedule{min-height:100%}.schedule-placeholder{border:1px dashed #555;min-height:240px;display:flex;align-items:center;justify-content:center;color:#888;font-size:.9rem}.algorithm-facts{display:flex;flex-direction:column;gap:.75rem;padding:1rem}.algorithm-facts-card{border-radius:6px;background:#111;overflow:hidden}.algorithm-facts-header{border-bottom:1px solid #444;padding:.6rem .8rem;background:#181818}.algorithm-facts-header h3{margin:0;font-size:.95rem;font-weight:650}.fact-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.5rem;border-bottom:1px solid #2f2f2f}.fact-label{color:#cfcfcf;font-size:.95rem}.fact-value{color:#fff;font-weight:600;text-align:right;margin-left:15px}.success{color:#43c07a}.failure{color:#e06b6b}.control-panel{width:320px;border:1px solid #444;background:#111;display:flex;flex-direction:column}.control-panel-header{border-bottom:1px solid #444;padding:.75rem 1rem}.control-panel-header h2{margin:0}.control-panel-content{display:flex;flex-direction:column;gap:1rem;padding:1rem}.file-selector-card{border:1px solid #444;background:#181818}.file-selector-header{border-bottom:1px solid #444;padding:.6rem .8rem}.file-selector-header h3{margin:0;font-size:1rem}.file-selector-body{padding:.8rem}.file-selector-search{width:100%;box-sizing:border-box;padding:.5rem;margin-bottom:.6rem;background:#111;color:#fff;border:1px solid #555}.file-selector-dropdown{width:100%;padding:.5rem;background:#111;color:#fff;border:1px solid #555}.file-selector-path{margin-top:.75rem;font-size:.8rem;color:#aaa;word-break:break-all}.seed-generator-card{border:1px solid #444;background:#181818}.seed-generator-header{border-bottom:1px solid #444;padding:.6rem .8rem}.seed-generator-header h3{margin:0;font-size:1rem}.seed-generator-body{padding:.8rem;display:flex;flex-direction:column;gap:.6rem}.seed-generator-input{width:100%;box-sizing:border-box;padding:.5rem;background:#111;color:#fff;border:1px solid #555}.seed-generator-button{width:100%;padding:.55rem;border:1px solid #555;background:#202020;color:#fff;cursor:pointer}.seed-generator-button:hover{background:#2a2a2a}.task-list-card{border:1px solid #444;background:#181818}.task-list-header{border-bottom:1px solid #444;padding:.6rem .8rem}.task-list-header h3{margin:0}.task-list-body{max-height:300px;overflow-y:auto;padding:.5rem}.task-item{border:1px solid #333;margin-bottom:6px;background:#111}.task-summary{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;padding:6px 8px;cursor:pointer;font-size:.9rem}.task-summary:hover{background:#1c1c1c}.task-id{font-weight:600}.task-details{padding:8px;border-top:1px solid #333;font-size:.85rem;display:grid;grid-template-columns:1fr 1fr;gap:4px}.algorithm-schedule{width:100%;min-height:220px}.schedule-scroll-container{width:100%;height:260px;overflow:auto;border:1px solid #3a3a3a;background:#0f0f0f}.schedule-canvas{position:relative}.schedule-header-row,.schedule-row{display:flex}.schedule-header-row{position:sticky;top:0;z-index:4;background:#111;border-bottom:1px solid #333}.schedule-task-label{position:sticky;left:0;z-index:3;width:80px;min-width:80px;max-width:80px;display:flex;align-items:center;justify-content:center;background:#111;border-right:1px solid #333;font-weight:600}.schedule-header-label{z-index:5}.schedule-timeline-header{position:relative;height:100%;background:#111}.schedule-track{position:relative;border-bottom:1px solid #2a2a2a;background:#0f0f0f}.schedule-minor-tick,.schedule-row-minor-line{position:absolute;top:0;bottom:0;width:1px;background:#242424}.schedule-major-tick,.schedule-row-major-line{position:absolute;top:0;bottom:0;width:1px;background:#4d4d4d}.schedule-tick-label{position:absolute;top:6px;left:4px;font-size:.8rem;color:#d0d0d0}.schedule-block{position:absolute;top:5px;height:10px;border:1px solid rgba(255,255,255,.35);box-sizing:border-box;border-radius:2px}.schedule-placeholder{border:1px dashed #555;min-height:120px;display:flex;align-items:center;justify-content:center;color:#888}.schedule-pagination-wrapper{display:flex;justify-content:center;width:100%}.schedule-pagination{display:grid;grid-template-columns:44px 44px minmax(480px,auto) 44px 44px 140px;align-items:center;gap:.5rem}.schedule-pagination-pages{display:flex;justify-content:center;align-items:center;gap:.4rem;min-width:280px}.schedule-pagination button,.schedule-pagination select{height:36px;padding:.4rem .6rem;border:1px solid #555;border-radius:0;background:#181818;color:#fff}.schedule-pagination button{min-width:44px;cursor:pointer}.schedule-pagination-pages button{min-width:40px}.schedule-pagination button:hover:enabled{background:#222}.schedule-pagination button:disabled{opacity:.45;cursor:not-allowed}.schedule-pagination button.active{background:#2a2a2a;border-color:#888;font-weight:700}.schedule-pagination-ellipsis{width:24px;text-align:center;color:#b5b5b5}.topology-card{display:flex;border:1px solid #444;border-radius:6px;background:#111;overflow:hidden;flex-direction:column}.topology-card-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid #3a3a3a;background:linear-gradient(to right,#111,#0a0a0a)}.topology-card-header h3{margin:0;font-size:1.1rem;color:#fff}.topology-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.9rem;color:#cfcfcf}.topology-canvas-wrapper{padding:1rem;min-height:250px}.topology-svg{width:100%;height:100%;display:block;background:#050505}.topology-link{stroke:#8ecdf7;stroke-width:3;opacity:.9}.topology-link-label{fill:#d9d9d9;font-size:11px}.topology-node{stroke:#ffffff40;stroke-width:2}.topology-switch{fill:#1b3a57}.topology-end-system{fill:#3b5a2a}.topology-node-text{fill:#fff;font-size:12px;font-weight:700;pointer-events:none}.evaluation-page{display:flex;flex-direction:column;gap:2rem}.evaluation-panel{border:1px solid #444;background:#111;padding:1.5rem;border-radius:6px}.evaluation-panel h1{margin:0 0 .5rem;font-size:1.8rem}.evaluation-panel .description{color:#aaa;margin:0 0 1.5rem}.evaluation-filters{display:grid;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr) minmax(180px,1fr) auto;gap:.75rem;margin-bottom:1rem}.evaluation-search,.evaluation-select{padding:.6rem .75rem;border-radius:4px;border:1px solid #333;background:#0f0f0f;color:#ddd}.evaluation-search:focus,.evaluation-select:focus{outline:1px solid #3f6ad6;border-color:#3f6ad6}.filter-active{background:#2a3d6f;border-color:#3f6ad6}.selection-controls{display:flex;gap:.75rem;margin-bottom:1.5rem;align-items:center}.control-button,.run-button{padding:.6rem 1.2rem;background:#2a2a2a;color:#fff;border:1px solid #444;border-radius:4px;cursor:pointer;font-weight:500;transition:background .2s}.control-button:hover:enabled,.run-button:hover:enabled{background:#3a3a3a}.control-button:disabled,.run-button:disabled{opacity:.5;cursor:not-allowed}.file-count{margin-left:auto;color:#888;font-size:.95rem}.file-list{border:1px solid #333;border-radius:4px;background:#0f0f0f;margin-bottom:1.5rem}.file-list-header{border-bottom:1px solid #333;padding:.8rem 1rem;background:#181818}.file-list-header h3{margin:0;font-size:.95rem}.file-list-scroll{max-height:300px;overflow-y:auto;padding:.5rem}.no-files-message{color:#888;font-size:.9rem;padding:.75rem;margin:0}.file-checkbox-label{display:flex;align-items:flex-start;padding:.6rem .8rem;cursor:pointer;border-bottom:1px solid #1a1a1a;transition:background .2s}.file-checkbox-label:hover{background:#1a1a1a}.file-checkbox-label input[type=checkbox]{margin-right:.8rem;cursor:pointer}.file-label{color:#ccc;font-size:.9rem;font-weight:500}.file-info{display:flex;flex-direction:column;min-width:0;flex:1}.file-path{color:#7f7f7f;font-size:.78rem;margin-top:.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-button{width:100%;padding:.8rem;font-size:1rem;background:#1a4d2e;border-color:#2a6d3e}.run-button:hover:enabled{background:#2a6d3e}.run-button.running{opacity:.7;cursor:not-allowed}@media(max-width:900px){.evaluation-filters{grid-template-columns:1fr}.selection-controls{flex-wrap:wrap}.file-count{width:100%;margin-left:0}}.error-message{color:#ff6b6b;background:#3d0f0f;border:1px solid #5a2020;padding:.75rem;border-radius:4px;margin-top:1rem}.evaluation-results-container{display:flex;flex-direction:column;gap:2rem}.evaluation-header{border:1px solid #444;background:#111;padding:1.5rem;border-radius:6px}.evaluation-header h2{margin:0 0 .5rem}.evaluation-date{color:#888;font-size:.9rem;margin:.25rem 0}.task-count{color:#888;font-size:.9rem;margin:.25rem 0 1rem}.download-button{padding:.6rem 1.2rem;background:#2a2a2a;color:#fff;border:1px solid #444;border-radius:4px;cursor:pointer;margin-top:.75rem;transition:background .2s}.download-button:hover{background:#3a3a3a}.algorithms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(800px,1fr));gap:2rem}.algorithm-card{border:1px solid #444;background:#111;border-radius:6px;padding:1.5rem}.algorithm-name{margin:0 0 1rem;font-size:1.3rem;color:#fff}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.metric{background:#181818;border:1px solid #333;padding:1rem;border-radius:4px;text-align:center}.metric-label{color:#888;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.metric-value{color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:.25rem}.metric-detail{color:#666;font-size:.75rem}.taskset-table{overflow-x:auto}.taskset-table table{width:100%;border-collapse:collapse;font-size:.9rem}.taskset-table thead{background:#181818;border-bottom:1px solid #444}.taskset-table th{padding:.75rem;text-align:left;color:#aaa;font-weight:500;border-bottom:1px solid #333}.taskset-table td{padding:.75rem;border-bottom:1px solid #2a2a2a}.taskset-table tbody tr{transition:background .2s}.taskset-table tbody tr:hover{background:#1a1a1a}.taskset-table .row-success{color:#43c07a}.taskset-table .row-failure{color:#ff6b6b}.taskset-name{color:#aaa;font-weight:500}.credit-timeline-canvas-wrapper{padding:1rem;overflow-x:auto}.credit-timeline-svg{width:auto;min-width:0;height:210px;display:block;background:#050505}.switch-visualization-card{display:flex;flex-direction:column;gap:1rem;width:100%;min-width:0}.packet-timeline-card{width:100%;min-width:0}.packet-timeline-body{min-width:0}.packet-timeline-scroll-container{width:100%;max-width:100%;overflow-x:auto;overflow-y:auto}.credit-timeline-card{display:flex;border:1px solid #444;border-radius:6px;background:#111;overflow:hidden;flex-direction:column;width:100%}.credit-timeline-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid #3a3a3a;background:linear-gradient(to right,#111,#0a0a0a)}.credit-timeline-header h3{margin:0;font-size:1.1rem;color:#fff}.credit-timeline-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.9rem;color:#cfcfcf}.credit-timeline-label{fill:#fff;font-size:13px;font-weight:700}.credit-timeline-row-line{stroke:#2a2a2a;stroke-width:1}.credit-timeline-line{fill:none;stroke:#8ecdf7;stroke-width:2.5}.credit-timeline-axis{stroke:#666;stroke-width:1}.credit-timeline-tick{stroke:#242424;stroke-width:1}.credit-timeline-tick-label,.credit-timeline-time-label{fill:#d0d0d0;font-size:12px}.packet-timeline-card{display:flex;border:1px solid #444;border-radius:6px;background:#111;overflow:hidden;flex-direction:column;width:100%}.packet-timeline-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid #3a3a3a;background:linear-gradient(to right,#111,#0a0a0a)}.packet-timeline-header h3{margin:0;font-size:1.1rem;color:#fff}.packet-timeline-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.9rem;color:#cfcfcf}.packet-timeline-body{padding:1rem}.packet-timeline-scroll-container{width:100%;max-height:320px;overflow:auto;border:1px solid #3a3a3a;background:#0f0f0f;margin-top:1rem}.packet-transmission-label{font-size:.7rem;color:#111;font-weight:700;padding-left:3px;white-space:nowrap}.switch-timeline-card{display:flex;border:1px solid #444;border-radius:6px;background:#111;overflow:hidden;flex-direction:column;width:100%;height:100%;min-width:0}.switch-timeline-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid #3a3a3a;background:linear-gradient(to right,#111,#0a0a0a)}.switch-timeline-header h3{margin:0;font-size:1.1rem;color:#fff}.switch-timeline-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.9rem;color:#cfcfcf}.switch-timeline-body{padding:1rem;min-width:0}.switch-timeline-scroll-container{width:100%;max-width:100%;max-height:700px;overflow:auto;border:1px solid #3a3a3a;background:#0f0f0f;margin-top:1rem}.switch-timeline-canvas{position:relative}.switch-timeline-header-row,.switch-timeline-row{display:flex}.switch-timeline-header-row{position:sticky;top:0;z-index:4;background:#111;border-bottom:1px solid #333}.switch-timeline-label{width:90px;min-width:90px;max-width:90px;display:flex;align-items:center;justify-content:center;background:#111;border-right:1px solid #333;font-weight:700;font-size:.7rem;color:#fff}.switch-timeline-sticky-label{position:sticky;left:0;z-index:3}.switch-timeline-header-row .switch-timeline-sticky-label{z-index:5}.switch-timeline-track{position:relative;background:#0f0f0f;border-bottom:1px solid #2a2a2a;overflow:hidden}.switch-timeline-time-track{background:#111}.switch-timeline-minor-tick,.switch-timeline-row-minor-line{position:absolute;top:0;bottom:0;width:1px;background:#242424}.switch-timeline-major-tick,.switch-timeline-row-major-line{position:absolute;top:0;bottom:0;width:1px;background:#4d4d4d}.switch-timeline-tick-label{position:absolute;top:6px;left:4px;font-size:.65rem;color:#d0d0d0}.switch-packet-block{position:absolute;top:2px;height:15px;border:1px solid rgba(255,255,255,.35);box-sizing:border-box;border-radius:2px;color:#111;font-size:.8rem;font-weight:700;padding-left:3px;overflow:hidden;white-space:nowrap}.switch-credit-svg{position:absolute;inset:0;pointer-events:none}.switch-credit-line{fill:none;stroke:#8ecdf7;stroke-width:2}.switch-timeline-empty{display:flex;align-items:center;padding-left:.75rem;color:#888;font-size:.85rem}.switch-credit-zero-line{stroke:#888;stroke-width:1.5;stroke-dasharray:4 4;opacity:.8}.switch-timeline-global-lines{position:absolute;inset:0;pointer-events:none;z-index:1}.switch-packet-start-line{position:absolute;top:0;bottom:0;width:2px;background:#ffffff26;border-left:2px dashed rgba(235,246,255,.507)}.cbs-slider-body{padding:.9rem .8rem;display:flex;flex-direction:column;gap:1.1rem}.cbs-slider-row{display:flex;flex-direction:column;gap:.55rem}.cbs-slider-label-row{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;color:#d8d8d8;font-size:.9rem}.cbs-slider-label-row span:first-child{font-weight:600;color:#f1f1f1}.cbs-slider-value{color:#9fd4ff;font-size:.8rem;font-weight:700;white-space:nowrap}.cbs-slider{appearance:none;width:100%;height:6px;border-radius:999px;background:linear-gradient(to right,#2f9df4 0% 50%,#2f2f2f 50% 100%);outline:none;cursor:pointer}.cbs-slider::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border-radius:50%;background:#8ecdf7;border:2px solid #111;box-shadow:0 0 0 1px #8ecdf7;cursor:pointer}.cbs-slider::-webkit-slider-thumb:hover{background:#b7e2ff;box-shadow:0 0 0 2px #8ecdf759}.cbs-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#8ecdf7;border:2px solid #111;box-shadow:0 0 0 1px #8ecdf7;cursor:pointer}.cbs-slider::-moz-range-track{height:6px;border-radius:999px;background:#2f2f2f}.cbs-slider::-moz-range-progress{height:6px;border-radius:999px;background:#2f9df4}.missed-deadline-overview{margin-bottom:1rem;border:1px solid #5a2020;background:#1a0d0d;border-radius:6px;overflow:hidden}.missed-deadline-overview-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .9rem;border-bottom:1px solid #5a2020;background:#220f0f}.missed-deadline-overview-header h4{margin:0;font-size:.95rem;color:#ff8a8a}.missed-deadline-overview-header span{color:#cfcfcf;font-size:.85rem}.missed-deadline-list{display:flex;flex-direction:column;max-height:160px;overflow-y:auto}.missed-deadline-item{display:flex;gap:1rem;flex-wrap:wrap;padding:.55rem .9rem;border-bottom:1px solid #331818;color:#d0d0d0;font-size:.85rem}.missed-deadline-item:last-child{border-bottom:none}.missed-deadline-packet{color:#fff;font-weight:700}.passed-deadline-overview{margin-bottom:1rem;border:1px solid #1f5a38;background:#102018;border-radius:6px;overflow:hidden}.passed-deadline-overview-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .9rem;border-bottom:1px solid #18331a;background:#152c21}.passed-deadline-overview-header h4{margin:0;font-size:.95rem;color:#43c07a}.passed-deadline-overview-header span{color:#cfcfcf;font-size:.85rem}.passed-deadline-list{display:flex;flex-direction:column;max-height:160px;overflow-y:auto}.passed-deadline-item{display:flex;gap:1rem;flex-wrap:wrap;padding:.55rem .9rem;border-bottom:1px solid #18331a;color:#d0d0d0;font-size:.85rem}.passed-deadline-item:last-child{border-bottom:none}.passed-deadline-packet{color:#fff;font-weight:700}.missed-deadline-late{color:#ff6b6b;font-weight:700}.missed-deadline-marker{position:absolute;top:3px;bottom:3px;width:3px;background:#ff4d4d;border-radius:999px;box-shadow:0 0 6px #ff4d4dcc;z-index:6;pointer-events:auto}.switch-packet-block-missed{outline:2px solid #ff4d4d;outline-offset:-2px;box-shadow:0 0 8px #ff4d4d8c}.test-list-item{width:100%;padding:.8rem;border:1px solid #333;background:#181818;color:#fff;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:.35rem;transition:background .2s,border-color .2s}.test-list-item:hover{background:#222;border-color:#555}.test-list-title{font-size:1rem;font-weight:700}.test-list-description{color:#aaa;font-size:.85rem;line-height:1.35}.test-result-panel{border:1px solid #444;border-radius:6px;background:#111;min-height:500px;max-height:calc(100vh - 8rem);overflow:auto;padding:1rem}.test-result-content{min-width:0}.fact-value.route-value{max-width:720px;white-space:normal;word-break:break-word}.comparison-summary-card,.comparison-section{border:1px solid #444;border-radius:6px;background:#111;overflow:hidden}.comparison-summary-header,.comparison-section-header{padding:.9rem 1rem;border-bottom:1px solid #3a3a3a;background:linear-gradient(to right,#111,#0a0a0a)}.comparison-summary-header h3,.comparison-section-header h3{margin:0;font-size:1.1rem;color:#fff}.comparison-section-body{padding:1rem}.comparison-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1rem}.deadline-comparison-lists{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:0 1rem 1rem}.deadline-list-card{border:1px solid #333;background:#0f0f0f;border-radius:4px;overflow:hidden}.deadline-list-header{display:flex;justify-content:space-between;align-items:center;padding:.65rem .8rem;border-bottom:1px solid #333;background:#181818}.deadline-list-header h4{margin:0;font-size:.95rem}.deadline-list-header span{color:#ff6b6b;font-weight:700}.deadline-list-empty{margin:0;padding:.8rem;color:#43c07a;font-size:.9rem}.deadline-list-body{max-height:180px;overflow-y:auto}.deadline-list-row{display:flex;flex-wrap:wrap;gap:.75rem;padding:.55rem .8rem;border-bottom:1px solid #222;color:#d0d0d0;font-size:.85rem}.deadline-list-row:last-child{border-bottom:none}.cbs-loading-box{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.cbs-spinner{width:32px;height:32px;border:4px solid #ddd;border-top-color:#2f9df4;border-radius:50%;animation:cbs-spin .8s linear infinite}@keyframes cbs-spin{to{transform:rotate(360deg)}}.switch-timeline-grid-background{background-image:linear-gradient(to right,rgba(255,255,255,.12) 1px,transparent 1px);background-size:60px 100%}.deadline-summary-card{margin-bottom:12px}.deadline-summary-card button{cursor:pointer}.dashboard-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:2rem;align-items:start}.results-column{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;min-width:0;max-width:100%;overflow:hidden}.topology-card{max-width:1050px;align-self:center;display:flex;flex-direction:column;border:1px solid #444;border-radius:6px;background:#111;overflow:hidden}.topology-card-header{min-width:0}.topology-meta{justify-content:flex-end;min-width:0}.topology-canvas-wrapper{padding:.75rem;min-height:0;display:flex;justify-content:center;align-items:center}.topology-svg{width:100%;height:auto;display:block;background:#050505}.switch-timeline-card{width:fit-content;max-width:100%;display:flex;flex-direction:column;border:1px solid #444;border-radius:6px;background:#111;overflow:hidden}.switch-timeline-header{width:auto;max-width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border-bottom:1px solid #3a3a3a;background:linear-gradient(to right,#111,#0a0a0a)}.switch-timeline-header h3{flex-shrink:0}.switch-timeline-meta{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:1rem;min-width:0;max-width:100%;font-size:.9rem;color:#cfcfcf}.switch-timeline-body{width:fit-content;max-width:100%;padding:1rem;box-sizing:border-box}.switch-timeline-scroll-container{width:fit-content;max-width:100%;max-height:700px;overflow:auto;border:1px solid #3a3a3a;background:#0f0f0f;margin-top:1rem}.switch-timeline-canvas{position:relative;max-width:none}.comparison-section:has(.switch-timeline-card){width:fit-content;max-width:100%}.comparison-section:has(.switch-timeline-card) .comparison-section-body{width:fit-content;max-width:100%;padding:1rem;box-sizing:border-box}.comparison-summary-card{width:100%;max-width:100%;box-sizing:border-box}
