:root{--color-slate-900: #0f172a;--color-gray-800: #1e293b;--color-gray-700: #374151;--color-gray-400: #9ca3af;--color-gray-300: #d1d5db;--color-blue-600: #2563eb;--color-blue-700: #1d4ed8;--color-blue-500: #3b82f6;--color-blue-400: #60a5fa;--color-blue-300: #93c5fd;--color-white: white;--bg-primary: #f5f7fa;--bg-secondary: #ffffff;--bg-tertiary: #f8fafc;--bg-form: #f8fafc;--bg-breadcrumb: #edf2f7;--bg-sidebar: #f8f9fa;--bg-hover: #f1f5f9;--text-primary: #222222;--text-secondary: #6c757d;--text-muted: #9ca3af;--border-color: #dee2e6;--border-light: #e5e7eb;--accent-primary: #0d6efd;--accent-primary-alpha: rgba(13, 110, 253, .1);--accent-hover: #155a9c;--sidebar-active-bg: #e7f1ff;--error-color: #ef4444;--error-color-rgb: 239, 68, 68;--error-color-alpha-10: rgba(239, 68, 68, .1);--error-color-alpha-15: rgba(239, 68, 68, .15);--error-color-alpha-20: rgba(239, 68, 68, .2);--danger-color: var(--error-color);--success-color: #22c55e;--success-color-rgb: 34, 197, 94;--success-hover: #16a34a;--warning-color: #f59e0b;--warning-color-rgb: 245, 158, 11;--warning-color-alpha: rgba(245, 158, 11, .25);--warning-color-alpha-light: rgba(245, 158, 11, .15);--info-color: #3b82f6;--info-color-rgb: 59, 130, 246;--error-hover: #dc2626;--placeholder-text: #999999;--link-color: #0d6efd;--link-hover-color: #155a9c;--scrollbar-thumb: #cbd5e0;--scrollbar-thumb-hover: #9ca3af;--modal-backdrop: rgba(0, 0, 0, .75);--primary-color: var(--accent-primary);--primary-color-alpha: rgba(13, 110, 253, .1);--primary-color-alpha-15: rgba(13, 110, 253, .15);--primary-color-alpha-20: rgba(13, 110, 253, .2);--text-placeholder: var(--placeholder-text);--kbd-bg: rgba(128, 128, 128, .2);--error-bg: rgba(239, 68, 68, .1);--auto-detect-color: var(--error-color);--user-tag-color: var(--warning-color);--badge-info: #60a5fa;--badge-info-text: #ffffff;--badge-info-rgb: 96, 165, 250;--badge-low: #64748b;--badge-low-text: #ffffff;--badge-low-rgb: 100, 116, 139;--badge-medium: #f97316;--badge-medium-text: #ffffff;--badge-medium-rgb: 249, 115, 22;--badge-high: #ef4444;--badge-high-text: #ffffff;--badge-high-rgb: 239, 68, 68;--badge-code: #6b7280;--badge-code-text: #ffffff;--badge-cel: var(--badge-medium);--badge-cel-text: var(--badge-medium-text);--protocol-request: #3b82f6;--protocol-request-bg: rgba(59, 130, 246, .1);--protocol-response: #22c55e;--protocol-response-bg: rgba(34, 197, 94, .1);--protocol-meta: #9ca3af;--protocol-meta-bg: rgba(156, 163, 175, .1);--protocol-status: #f59e0b;--protocol-status-bg: rgba(245, 158, 11, .1);--protocol-poweron: #8b5cf6;--protocol-poweron-bg: rgba(139, 92, 246, .1);--protocol-command: #06b6d4;--protocol-command-bg: rgba(6, 182, 212, .1);--protocol-error: #ef4444;--protocol-error-bg: rgba(239, 68, 68, .1);--packet-viewer-hex: #fb923c;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--spacing-3xl: 3rem;--spacing-4xl: 4rem;--spacing-5xl: 5rem;--text-h1: 2.25rem;--text-h2: 1.875rem;--text-h3: 1.5rem;--text-h4: 1.25rem;--text-h5: 1.125rem;--text-h6: 1rem;--text-base: .875rem;--text-lg: 1rem;--text-sm: .8rem;--text-xs: .75rem;--text-xl: 1.125rem;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .15);--shadow-2xl: 0 25px 50px rgba(0, 0, 0, .25);--shadow-accent-sm: 0 2px 8px rgba(13, 110, 253, .15);--shadow-accent-md: 0 4px 12px rgba(13, 110, 253, .2);--shadow-accent-lg: 0 8px 20px rgba(13, 110, 253, .3);--shadow-accent-xl: 0 12px 24px rgba(13, 110, 253, .4);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--breakpoint-xs: 0px;--breakpoint-sm: 576px;--breakpoint-md: 768px;--breakpoint-lg: 992px;--breakpoint-xl: 1200px;--breakpoint-xxl: 1400px;--breakpoint-sm-max: 575.98px;--breakpoint-md-max: 767.98px;--breakpoint-lg-max: 991.98px;--breakpoint-xl-max: 1199.98px;--breakpoint-xxl-max: 1399.98px;--bs-body-bg: var(--bg-primary);--bs-body-color: var(--text-primary);--bs-border-color: var(--border-color);--bs-border-color-translucent: var(--border-light);--bs-primary: var(--accent-primary);--bs-primary-rgb: 13, 110, 253;--bs-secondary: var(--text-secondary);--bs-secondary-color: var(--placeholder-text);--bs-success: var(--success-color);--bs-danger: var(--error-color);--bs-warning: var(--warning-color);--bs-link-color: var(--link-color);--bs-link-hover-color: var(--link-hover-color);--bs-link-color-rgb: 13, 110, 253;--bs-link-opacity: 1;--bs-tertiary-bg: rgba(0, 0, 0, .05);--bs-info-text-emphasis: var(--accent-primary);--bs-info-bg-subtle: rgba(13, 110, 253, .1);--bs-info-border-subtle: rgba(13, 110, 253, .25);--bs-success-text-emphasis: var(--success-color);--bs-success-bg-subtle: rgba(34, 197, 94, .1);--bs-success-border-subtle: rgba(34, 197, 94, .25);--bs-warning-text-emphasis: var(--warning-color);--bs-warning-bg-subtle: rgba(245, 158, 11, .1);--bs-warning-border-subtle: rgba(245, 158, 11, .25);--bs-danger-text-emphasis: var(--error-color);--bs-danger-bg-subtle: rgba(239, 68, 68, .1);--bs-danger-border-subtle: rgba(239, 68, 68, .25)}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-form: #334155;--bg-sidebar: #1a202c;--bg-hover: #334155;--text-primary: #e2e8f0;--text-secondary: #cbd5e0;--text-muted: #a0aec0;--border-color: #2d3748;--border-light: #374151;--accent-primary: #60a5fa;--accent-hover: #93c5fd;--sidebar-active-bg: #2d3748;--error-color: #ef4444;--error-color-rgb: 239, 68, 68;--error-color-alpha-10: rgba(239, 68, 68, .1);--error-color-alpha-15: rgba(239, 68, 68, .15);--error-color-alpha-20: rgba(239, 68, 68, .2);--error-hover: #dc2626;--danger-color: var(--error-color);--success-color: #22c55e;--success-color-rgb: 34, 197, 94;--success-hover: #16a34a;--warning-color: #f59e0b;--warning-color-rgb: 245, 158, 11;--placeholder-text: #718096;--bg-breadcrumb: #1a202c;--link-color: #7dd3fc;--link-hover-color: #38bdf8;--scrollbar-thumb: #4a5568;--scrollbar-thumb-hover: #718096;--primary-color: var(--accent-primary);--primary-color-alpha: rgba(96, 165, 250, .15);--primary-color-alpha-15: rgba(96, 165, 250, .2);--primary-color-alpha-20: rgba(96, 165, 250, .25);--text-placeholder: var(--placeholder-text);--kbd-bg: rgba(255, 255, 255, .1);--error-bg: rgba(239, 68, 68, .15);--auto-detect-color: var(--error-color);--user-tag-color: var(--warning-color);--badge-info: #60a5fa;--badge-info-text: #ffffff;--badge-info-rgb: 96, 165, 250;--badge-low: #64748b;--badge-low-text: #ffffff;--badge-low-rgb: 100, 116, 139;--badge-medium: #f97316;--badge-medium-text: #ffffff;--badge-medium-rgb: 249, 115, 22;--badge-high: #ef4444;--badge-high-text: #ffffff;--badge-high-rgb: 239, 68, 68;--badge-code: #6b7280;--badge-code-text: #ffffff;--badge-cel: var(--badge-medium);--badge-cel-text: var(--badge-medium-text);--protocol-request: #60a5fa;--protocol-request-bg: rgba(96, 165, 250, .15);--protocol-response: #34d399;--protocol-response-bg: rgba(52, 211, 153, .15);--protocol-meta: #9ca3af;--protocol-meta-bg: rgba(156, 163, 175, .15);--protocol-status: #fbbf24;--protocol-status-bg: rgba(251, 191, 36, .15);--protocol-poweron: #a78bfa;--protocol-poweron-bg: rgba(167, 139, 250, .15);--protocol-command: #22d3ee;--protocol-command-bg: rgba(34, 211, 238, .15);--protocol-error: #f87171;--protocol-error-bg: rgba(248, 113, 113, .15);--packet-viewer-hex: #fdba74;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .6);--shadow-2xl: 0 25px 50px rgba(0, 0, 0, .8);--shadow-accent-sm: 0 2px 8px rgba(96, 165, 250, .2);--shadow-accent-md: 0 4px 12px rgba(96, 165, 250, .25);--shadow-accent-lg: 0 8px 20px rgba(96, 165, 250, .35);--shadow-accent-xl: 0 12px 24px rgba(96, 165, 250, .45);--bs-body-bg: var(--bg-primary);--bs-body-color: var(--text-primary);--bs-border-color: var(--border-color);--bs-border-color-translucent: var(--border-light);--bs-primary: var(--accent-primary);--bs-primary-rgb: 96, 165, 250;--bs-secondary: var(--text-secondary);--bs-secondary-color: var(--placeholder-text);--bs-success: var(--success-color);--bs-danger: var(--error-color);--bs-warning: var(--warning-color);--bs-link-color: var(--link-color);--bs-link-hover-color: var(--link-hover-color);--bs-link-color-rgb: 125, 211, 252;--bs-link-opacity: 1;--bs-tertiary-bg: rgba(255, 255, 255, .05);--bs-info-text-emphasis: var(--accent-primary);--bs-info-bg-subtle: rgba(96, 165, 250, .15);--bs-info-border-subtle: rgba(96, 165, 250, .3);--bs-success-text-emphasis: var(--success-color);--bs-success-bg-subtle: rgba(34, 197, 94, .15);--bs-success-border-subtle: rgba(34, 197, 94, .3);--bs-warning-text-emphasis: var(--warning-color);--bs-warning-bg-subtle: rgba(245, 158, 11, .15);--bs-warning-border-subtle: rgba(245, 158, 11, .3);--bs-danger-text-emphasis: var(--error-color);--bs-danger-bg-subtle: rgba(239, 68, 68, .15);--bs-danger-border-subtle: rgba(239, 68, 68, .3)}.device-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:var(--link-color)}.device-link:hover{color:var(--link-hover-color);text-decoration:none}.car-link{text-decoration:none;color:var(--link-color)}.car-link:hover{color:var(--link-hover-color);text-decoration:none}.toggleable-section-header{background-color:var(--bg-secondary);border-radius:8px;cursor:pointer;transition:background-color .2s ease}.toggleable-section-header:hover{background-color:var(--sidebar-active-bg)}.rich-text-value-badge{display:inline-block;padding:.15em .4em;border-radius:var(--radius-sm);font-family:monospace;font-size:.95em;font-weight:var(--font-weight-medium);background-color:var(--bg-form);white-space:nowrap;vertical-align:baseline;line-height:1;box-shadow:var(--shadow-xs)}.modal-content{background-color:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-color)}.modal-header{border-bottom-color:var(--border-color)}.modal-footer{border-top-color:var(--border-color)}.modal-title{color:var(--text-primary)}.btn-close{filter:var(--bs-btn-close-filter, invert(1) grayscale(100%) brightness(200%))}[data-theme=dark] .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}.form-control,.form-select{background-color:var(--bg-form);border-color:var(--border-color);color:var(--text-primary)}.form-control:focus,.form-select:focus{background-color:var(--bg-form);border-color:var(--accent-primary);color:var(--text-primary);box-shadow:0 0 0 .25rem var(--primary-color-alpha)}.form-control::placeholder{color:var(--text-placeholder)}.form-label{color:var(--text-primary)}.form-text{color:var(--text-muted)}.btn-outline-secondary{background-color:var(--bg-secondary)!important;border-color:var(--border-color)!important;color:var(--text-secondary)!important}.btn-outline-secondary:hover{background-color:var(--bg-primary)!important;border-color:var(--accent-primary)!important;color:var(--accent-primary)!important}.btn-outline-info{background-color:var(--bg-secondary)!important;border-color:var(--info-color)!important;color:var(--info-color)!important}.btn-outline-info:hover{background-color:var(--info-color)!important;border-color:var(--info-color)!important;color:var(--color-white)!important}.tooltip{--bs-tooltip-bg: var(--bg-secondary);--bs-tooltip-color: var(--text-primary);--bs-tooltip-opacity: 1;z-index:1070}.tooltip .tooltip-inner{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 .125rem .25rem #0000001a;font-size:.75rem;max-width:200px;padding:.375rem .75rem}.tooltip .tooltip-arrow:before{border-color:transparent}.tooltip.bs-tooltip-top .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before{border-top-color:var(--bg-secondary)}.tooltip.bs-tooltip-end .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before{border-right-color:var(--bg-secondary)}.tooltip.bs-tooltip-bottom .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before{border-bottom-color:var(--bg-secondary)}.tooltip.bs-tooltip-start .tooltip-arrow:before,.tooltip.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before{border-left-color:var(--bg-secondary)}@keyframes breathing-glow-high{0%,to{box-shadow:0 0 4px rgba(var(--badge-high-rgb),.15),0 0 8px rgba(var(--badge-high-rgb),.08),inset 0 0 4px rgba(var(--badge-high-rgb),.1)}50%{box-shadow:0 0 8px rgba(var(--badge-high-rgb),.15),0 0 12px rgba(var(--badge-high-rgb),.08),inset 0 0 8px rgba(var(--badge-high-rgb),.15)}}@keyframes border-beam{0%{background-position:200% 0%}to{background-position:-200% 0%}}.breathing-glow-high{position:relative;animation:breathing-glow-high 3s ease-in-out infinite}.breathing-glow-high:before{content:"";position:absolute;inset:-2px;border-radius:12px;background:linear-gradient(90deg,transparent 0%,transparent 45%,rgba(var(--badge-high-rgb),.3) 50%,transparent 55%,transparent 100%);background-size:200% 100%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;padding:2px;animation:border-beam 8s linear infinite;animation-delay:calc(var(--beam-delay, 0) * -1s);pointer-events:none}.breathing-glow-high:hover{animation:none}.breathing-glow-high:hover:before{animation:none;opacity:0}.modal-content[data-modal-border-laptop-only][data-severity=High]{box-shadow:0 0 20px rgba(var(--badge-high-rgb),.4),0 0 40px rgba(var(--badge-high-rgb),.2)}.modal-content[data-modal-border-laptop-only][data-severity=Medium]{box-shadow:0 0 20px rgba(var(--badge-medium-rgb),.4),0 0 40px rgba(var(--badge-medium-rgb),.2)}.modal-content[data-modal-border-laptop-only][data-severity=Low]{box-shadow:0 0 20px rgba(var(--badge-low-rgb),.4),0 0 40px rgba(var(--badge-low-rgb),.2)}.modal-content[data-modal-border-laptop-only][data-severity=Info]{box-shadow:0 0 20px rgba(var(--badge-info-rgb),.4),0 0 40px rgba(var(--badge-info-rgb),.2)}@media(max-width:991.98px){.modal-content[data-modal-border-laptop-only]{box-shadow:none}}.dot-pattern-bg{position:relative}.dot-pattern-bg:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,var(--border-light) 1.5px,transparent 1.5px);background-size:32px 32px;background-position:0 0;opacity:.4;pointer-events:none;border-radius:inherit;z-index:0}.dot-pattern-bg>*{position:relative;z-index:1}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.gradient-text{background:linear-gradient(-45deg,var(--color-blue-600),var(--color-blue-300));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:900;animation:gradientShift 20s ease infinite;line-height:1.2}.modern-tagline{font-weight:300;letter-spacing:.025em;line-height:1.5}@media(max-width:575.98px){.gradient-text{letter-spacing:-.01em}}.hex-ascii-input-container{width:100%}.hex-ascii-input-container input{transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.hex-ascii-input-container input:focus{outline:none;border-color:var(--accent-primary)!important;box-shadow:0 0 0 2px var(--primary-color-alpha)!important}.hex-ascii-input-container input::placeholder{color:var(--text-placeholder);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.hex-ascii-input-container input.hex-mode{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace!important;letter-spacing:.08em!important;font-weight:var(--font-weight-medium)!important;border-color:var(--bs-warning)!important;background-color:var(--bs-warning-bg-subtle)!important;text-transform:uppercase!important;color:var(--packet-viewer-hex)!important}.hex-ascii-input-container input.ascii-mode{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important;background-color:var(--bs-info-bg-subtle)!important;border-color:var(--packet-viewer-hex)!important;color:var(--text-primary)!important}.hex-response-container{background-color:var(--background-color-alt);border:1px solid var(--border-color);border-radius:4px;padding:8px;font-family:Courier New,monospace}.list-group-item{border-color:var(--border-color)}.list-group-item:hover{background-color:var(--background-color-alt)}
