.header{background:var(--sl-color-neutral-900);box-shadow:var(--sl-shadow-small);padding:0 2rem;position:sticky;top:0;z-index:1000;display:flex;justify-content:space-between;align-items:center;height:80px;color:var(--sl-color-neutral-200);border-bottom:1px solid var(--sl-color-neutral-600);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.header-title{display:flex;align-items:center;gap:1.5rem}.header-title h1{font-size:1.5rem;font-weight:600;color:var(--sl-color-neutral-200);margin:0}.header-actions{display:flex;align-items:center;gap:1rem}.logout-button{background:var(--color-primary);border:none;color:var(--sl-color-neutral-0);padding:.75rem 1.5rem;border-radius:12px;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:600;box-shadow:var(--sl-shadow-small)}.logout-button:hover{transform:translateY(-1px);box-shadow:var(--sl-shadow-medium);background:var(--color-primary-dark)}.user-profile{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.logout-text{font-size:.9rem;border-left:1px solid var(--sl-color-neutral-600);padding-left:.75rem}.header-logo{height:48px;width:auto;transition:transform .3s ease;filter:brightness(.9)}.header-logo:hover{transform:scale(1.05)}.footer{background:var(--gradient-nav);padding:1.5rem 2rem;color:var(--color-nav-text);border-top:1px solid var(--color-nav-border);position:fixed;bottom:0;left:0;right:0;width:100%;z-index:100}.footer-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;font-size:.9rem}main{margin-bottom:calc(4rem + 24px)}.footer-links{display:flex;gap:2rem}.footer-links a{color:var(--color-nav-text);text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--color-primary)}.menu{background:var(--sl-color-neutral-900);border-bottom:1px solid var(--sl-color-neutral-600);padding:0 2rem;display:flex;gap:1rem;height:50px;align-items:center;position:sticky;top:80px;z-index:100;box-shadow:var(--sl-shadow-small)}.menu-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;color:var(--sl-color-neutral-400);text-decoration:none;border-radius:8px;transition:all .3s ease;border:1px solid transparent;position:relative}.menu-item:hover{background:var(--sl-color-neutral-800);color:var(--sl-color-neutral-200);border-color:var(--sl-color-neutral-600);transform:translateY(-1px)}.menu-item.active{background:var(--sl-color-neutral-800);color:var(--sl-color-neutral-200);font-weight:600;border:1px solid var(--sl-color-neutral-600);box-shadow:var(--sl-shadow-small)}.menu-item.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--color-primary);border-radius:1px}.menu-icon{font-size:1.2rem;transition:transform .3s ease}.menu-item:hover .menu-icon{transform:scale(1.1)}.overview{padding:1.5rem;background:var(--sl-color-neutral-900);border-radius:12px;box-shadow:var(--sl-shadow-medium)}.stats-container{display:grid;grid-template-columns:2fr 1fr;gap:1rem;margin-bottom:1.5rem}.overview section{margin-bottom:1.5rem;padding:1.25rem;border-radius:12px;background:var(--sl-color-neutral-800);border:1px solid var(--sl-color-neutral-600);transition:all .2s ease}.overview section:hover{border-color:var(--color-primary-dark);box-shadow:var(--sl-shadow-x-small)}.overview h2{color:var(--sl-color-neutral-200);font-size:1.25rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.stat-card{background:var(--sl-color-neutral-800);padding:1rem;border-radius:8px;border:1px solid var(--sl-color-neutral-600);transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);border-color:var(--color-primary-dark);background:var(--sl-color-neutral-700);box-shadow:var(--sl-shadow-small)}.stat-card h3{color:var(--sl-color-neutral-300);font-size:.875rem;margin-bottom:.5rem;font-weight:500}.stat-value{font-size:1.5rem;font-weight:700;color:var(--color-primary-dark);line-height:1.2}.stat-card.online .stat-value{color:var(--sl-color-success-400)}.stat-card.offline .stat-value{color:var(--sl-color-danger-400)}.rankings-section{margin-bottom:1.5rem}.rankings-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.ranking-card{background:var(--sl-color-neutral-800);border:1px solid var(--sl-color-neutral-600);border-radius:8px;padding:.75rem}.ranking-card h3{color:var(--sl-color-neutral-200);font-size:.9rem;margin-bottom:.5rem;font-weight:600}.ranking-list{display:flex;flex-direction:column;gap:.375rem}.ranking-item{display:flex;align-items:center;gap:.5rem;padding:.375rem;background:var(--sl-color-neutral-900);border:1px solid var(--sl-color-neutral-600);border-radius:6px;transition:all .2s ease}.ranking-item:hover{transform:translate(2px);border-color:var(--color-primary-dark);background:var(--sl-color-neutral-700);box-shadow:var(--sl-shadow-small)}.rank{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--color-primary-dark);color:var(--sl-color-neutral-100);border-radius:50%;font-weight:600;font-size:.75rem;opacity:.9}.ranking-details{flex:1;min-width:0}.ranking-details .primary{font-weight:500;color:var(--sl-color-neutral-200);margin-bottom:.125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.85rem}.ranking-details .secondary{font-size:.75rem;color:var(--sl-color-neutral-400)}.firmware-distribution{background:var(--sl-color-neutral-800);padding:2.75rem;border-radius:8px;border:1px solid var(--sl-color-neutral-600);display:flex;gap:3.25rem;align-items:flex-start}.pie-chart-container{width:550px;height:550px;flex-shrink:0;position:relative;z-index:1}.pie-chart-container svg{width:100%;height:100%;overflow:visible}.pie-segment{transition:all .2s ease;opacity:.8;transform-origin:center;transform-box:fill-box}.pie-segment:not(.highlighted){opacity:.4}.pie-segment.highlighted{opacity:1;transform:scale(1.02);filter:drop-shadow(0 0 8px rgba(255,255,255,.2))}.pie-chart-container:not(:has(.pie-segment.highlighted)) .pie-segment{opacity:.8}.firmware-legend{flex:1;display:flex;flex-direction:column;gap:.25rem;padding:0}.legend-item{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;background:var(--sl-color-neutral-900);border-radius:4px;transition:all .2s ease;font-size:.75rem;cursor:pointer}.legend-item:hover{transform:translate(2px);background:var(--sl-color-neutral-700)}.legend-color{width:12px;height:12px;border-radius:2px;flex-shrink:0}.legend-text{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem}.legend-label{color:var(--sl-color-neutral-200);font-weight:500;font-size:.75rem}.legend-value{color:var(--sl-color-neutral-400);font-size:.75rem;white-space:nowrap}@media (max-width: 1400px){.rankings-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.stats-container{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.rankings-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.rankings-grid{grid-template-columns:1fr}.firmware-distribution{flex-direction:column;align-items:center}.firmware-legend{width:100%}}.wallet-address{word-break:keep-all;font-size:.75rem;font-family:JetBrains Mono,monospace;color:var(--color-content-text);width:140px;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.copyable-content sl-copy-button{flex-shrink:0;display:flex;align-items:center;justify-content:center}.copyable-content sl-copy-button::part(button){color:var(--color-content-text-secondary);border:none;width:28px;height:28px;padding:0;border-radius:4px;font-size:1rem;display:flex;align-items:center;justify-content:center;min-width:unset}.copyable-content sl-copy-button::part(button):hover{background-color:var(--color-content-hover);color:var(--color-content-text)}.devices{padding:1rem}.page-header h1{margin:0;font-size:1.5rem;font-weight:600}.controls-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;background:var(--color-content-surface);padding:1rem;border-radius:8px;box-shadow:var(--shadow-sm);border:1px solid var(--color-content-border)}.filters-container{display:flex;gap:.75rem;align-items:center;flex:1}.device-count{background:var(--color-content-hover);padding:.5rem .75rem;border-radius:4px;font-size:.875rem;color:var(--color-content-text);white-space:nowrap}.application-filter select,.status-filter select{padding:.5rem 2rem .5rem .75rem;border-radius:4px;border:1px solid var(--color-content-border);background-color:var(--color-content-surface);color:var(--color-content-text);min-width:180px;font-size:.875rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .5rem center;background-size:1em}.search-container{flex:1;max-width:400px}.search-input{width:100%;padding:.5rem .75rem;border-radius:4px;border:1px solid var(--color-content-border);background-color:var(--color-content-surface);color:var(--color-content-text);font-size:.875rem}.page-controls{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-content-text)}.page-controls select{padding:.25rem 1.5rem .25rem .5rem;border-radius:4px;border:1px solid var(--color-content-border);background-color:var(--color-content-surface);color:var(--color-content-text);font-size:.875rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .25rem center;background-size:1em}.application-filter select:hover,.status-filter select:hover,.search-input:hover,.page-controls select:hover{border-color:var(--color-content-text-secondary)}.application-filter select:focus,.status-filter select:focus,.search-input:focus,.page-controls select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-transparent)}.devices-table{background:var(--color-content-surface);border-radius:8px;box-shadow:var(--shadow-sm);border:1px solid var(--color-content-border);overflow:hidden;margin-bottom:1rem}table{width:100%;border-collapse:collapse;font-size:.85rem}th{background-color:var(--color-content-hover);font-weight:600;color:var(--color-content-text);font-size:.85rem;padding:.75rem 1rem;text-align:left;border-bottom:2px solid var(--color-content-border);white-space:nowrap}td{padding:.75rem 1rem;border-bottom:1px solid var(--color-content-border);color:var(--color-content-text)}.device-row:hover{background-color:#0000001a!important}.device-row.clickable:hover{background-color:var(--color-primary-transparent)!important}.device-row.non-clickable{opacity:.6}.device-row.non-clickable:hover{background-color:#0000000d!important}.device-row:hover .der-type-row{background-color:#00000026}.status-badge{padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500;text-transform:capitalize;white-space:nowrap}.status-badge.online{background-color:var(--color-success-transparent);color:var(--color-success);border:1px solid var(--color-success-border)}.status-badge.offline{background-color:var(--color-error-transparent);color:var(--color-error);border:1px solid var(--color-error-border)}td:nth-child(1),td:nth-child(2){font-family:JetBrains Mono,monospace;font-size:.8rem}.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;background:var(--color-content-surface);border-radius:8px;box-shadow:var(--shadow-sm);border:1px solid var(--color-content-border)}.page-numbers{display:flex;align-items:center;gap:.5rem}.pagination-button,.page-number{padding:.4rem .75rem;border:1px solid var(--color-content-border);background-color:var(--color-content-surface);border-radius:4px;cursor:pointer;font-size:.85rem;color:var(--color-content-text);transition:all .2s ease;min-width:2.5rem;text-align:center}.pagination-button:hover:not(:disabled),.page-number:hover:not(.active){background-color:var(--color-content-hover);border-color:var(--color-primary);color:var(--color-primary)}.pagination-button:disabled{cursor:not-allowed;opacity:.5}th[style*="cursor: pointer"]{position:relative;padding-right:1.5rem;cursor:pointer;transition:background-color .2s ease}th[style*="cursor: pointer"]:hover{background-color:#0000001a}th[style*="cursor: pointer"]:after{content:""}th span.sort-indicator{margin-left:.25rem;opacity:.5}th:hover span.sort-indicator{opacity:1}.copy-cell{padding:.75rem 1rem!important}th sl-copy-button::part(button){color:var(--color-content-text-secondary);border:none;width:24px;height:24px;padding:0;border-radius:4px;font-size:.9rem;display:inline-flex;align-items:center;justify-content:center;min-width:unset;background:transparent;vertical-align:middle}th sl-copy-button::part(button):hover{background:var(--color-content-hover);color:var(--color-primary)}.copyable-content{display:flex;align-items:center;gap:.5rem;width:180px}.copyable-content span{overflow:hidden;text-overflow:ellipsis;color:var(--color-content-text)}.uuid,.serial-number,.device-name{word-break:keep-all;font-size:.75rem;font-family:JetBrains Mono,monospace;color:var(--color-content-text);width:140px;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-name{font-family:inherit;font-size:.85rem}.copyable-content sl-copy-button::part(button){color:var(--color-content-text-secondary);border:none;width:28px;height:28px;padding:0;border-radius:4px;font-size:1rem;display:flex;align-items:center;justify-content:center;min-width:unset;--sl-tooltip-arrow-size: 0;--sl-tooltip-content: ""}.devices button,.status-filter select,.search-input{background:var(--color-content-surface);border:2px solid var(--color-content-border);color:var(--color-content-text);padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.9rem;font-weight:500;box-shadow:var(--shadow-sm)}.devices button:hover,.status-filter select:hover,.search-input:hover{background:var(--color-content-hover);transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--color-content-text-secondary)}.search-input{padding-left:2.5rem;cursor:text}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-transparent)}.device-type,.der-count{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-family:JetBrains Mono,monospace;color:var(--color-content-text);white-space:nowrap}.type-label,.der-label{background-color:var(--color-content-hover);padding:.15rem .4rem;border-radius:3px;border:1px solid var(--color-content-border)}.type-label{color:var(--color-content-text);font-weight:500;background-color:var(--color-content-hover);border:1px solid var(--color-content-border)}.der-label{color:var(--color-content-text-secondary);font-weight:400;background-color:var(--color-content-surface);border:1px solid var(--color-content-border)}.explorer-link{color:#666;display:flex;align-items:center;justify-content:center;transition:color .2s ease;text-decoration:none;font-size:1.2rem;width:24px;height:24px;border-radius:4px}.explorer-link:hover{color:#007bff;background-color:#007bff1a}.der-summary{display:flex;flex-direction:column;gap:1px;background:var(--color-content-surface);padding:4px;border-radius:4px}.der-summary .type-label{font-weight:500;color:#999;font-size:.7em;text-transform:uppercase;margin-bottom:2px;padding-left:2px}.der-summary-list{display:flex;flex-direction:column;gap:2px}.der-type-row{display:flex;align-items:center;gap:4px;font-size:.7em;line-height:1;color:#333;height:16px;padding:0 4px}.der-type-row .copyable-content,.der-type-row .der-info{display:flex;align-items:center;gap:2px;height:16px;background:var(--color-content-hover);border-radius:2px;padding:0 4px}.der-type-row .copyable-content{min-width:70px}.der-type-row .der-id,.der-type-row .der-info{font-family:JetBrains Mono,monospace;font-size:.95em;color:var(--color-content-text);line-height:16px}.der-type-row .last-seen{font-size:1em;color:var(--color-content-text-secondary);opacity:.8}.der-type-row sl-copy-button::part(button){padding:0;width:14px;height:14px;min-width:14px;color:#666}.devices-table td{vertical-align:top;padding:4px 8px}.application-filter select option,.status-filter select option{background-color:var(--color-content-surface);color:var(--color-content-text)}td .explorer-link{color:#28a745;display:flex;align-items:center;justify-content:center;transition:color .2s ease,background-color .2s ease;text-decoration:none;font-size:1.2rem;width:24px;height:24px;border-radius:4px;margin:0 auto}td .explorer-link:hover{color:#218838;background-color:#28a7451a}th:last-child,td:last-child{text-align:center;width:60px}table th:nth-child(6),table td:nth-child(6){text-align:center}.device-info-item .explorer-link:after{content:none}.ders-page{display:flex;flex-direction:column;gap:1rem;padding:1rem}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.page-header h1{margin:0;font-size:1.5rem;font-weight:600;color:var(--sl-color-neutral-200)}.controls-container{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem}.filters-container{display:flex;align-items:center;gap:1rem}.der-count{font-size:.875rem;color:var(--sl-color-neutral-300)}.status-filter select{padding:.5rem;border-radius:4px;border:1px solid var(--sl-color-neutral-600);background-color:var(--sl-color-neutral-900);color:var(--sl-color-neutral-200);font-size:.875rem}.search-container{position:relative}.search-input{padding:.5rem .5rem .5rem .75rem;border-radius:4px;border:1px solid var(--sl-color-neutral-600);background-color:var(--sl-color-neutral-900);color:var(--sl-color-neutral-200);font-size:.875rem;width:250px}.page-controls{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--sl-color-neutral-300)}.page-controls select{padding:.25rem .5rem;border-radius:4px;border:1px solid var(--sl-color-neutral-600);background-color:var(--sl-color-neutral-900);color:var(--sl-color-neutral-200)}.ders-table{background-color:var(--sl-color-neutral-900);border-radius:4px;border:1px solid var(--sl-color-neutral-600);overflow:hidden}.ders-table table{width:100%;border-collapse:collapse;table-layout:fixed}.ders-table th,.ders-table td{padding:.25rem .5rem;border-bottom:1px solid var(--sl-color-neutral-600);text-align:left;color:var(--sl-color-neutral-200);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ders-table th{background-color:var(--sl-color-neutral-800);font-size:.75rem;font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ders-table th:nth-child(1),.ders-table td:nth-child(1){width:120px}.ders-table th:nth-child(2),.ders-table td:nth-child(2){width:120px}.ders-table th:nth-child(3),.ders-table td:nth-child(3){width:120px}.ders-table th:nth-child(4),.ders-table td:nth-child(4){width:80px}.ders-table th:nth-child(5),.ders-table td:nth-child(5){width:100px}.ders-table th:nth-child(6),.ders-table td:nth-child(6){width:90px}.ders-table th:nth-child(7),.ders-table td:nth-child(7){width:100px}.ders-table th:nth-child(8),.ders-table td:nth-child(8){width:80px}.ders-table th:nth-child(9),.ders-table td:nth-child(9){width:100px}.ders-table tr:hover{background-color:var(--sl-color-neutral-700)}.sortable{cursor:pointer}.sort-icon{margin-left:.15rem;opacity:.5;font-size:.7rem}.copy-cell{padding:.25rem .5rem!important}.copyable-content{display:flex;align-items:center;gap:0;width:100%;max-width:100%}.copyable-content span{overflow:hidden;text-overflow:ellipsis;color:var(--sl-color-neutral-200);flex:1;min-width:0}.der-id{word-break:keep-all;font-size:.7rem;font-family:JetBrains Mono,monospace;color:var(--sl-color-neutral-200);display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:0;margin-right:0;flex:1;min-width:0}.gateway-id{word-break:keep-all;font-family:JetBrains Mono,monospace;color:var(--color-primary);display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:0;margin-right:0;flex:1;min-width:0;font-size:.7rem}.gateway-id:hover{color:var(--color-primary-light)}.copyable-content sl-copy-button{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin:0;padding:0}.copyable-content sl-copy-button::part(tooltip){display:none!important}.copyable-content sl-copy-button::part(base){margin:0;padding:0}.copyable-content sl-copy-button::part(button){color:var(--sl-color-neutral-400);border:none;width:20px;height:20px;padding:0;margin:0;border-radius:4px;font-size:.8rem;display:flex;align-items:center;justify-content:center;min-width:unset;--sl-tooltip-arrow-size: 0;--sl-tooltip-content: ""}.copyable-content sl-copy-button::part(button):before{font-size:.8rem}.copyable-content sl-copy-button::part(button):hover{background-color:var(--sl-color-neutral-700);color:var(--sl-color-neutral-200)}.der-link{color:var(--color-primary);text-decoration:none;font-size:.75rem;display:inline-flex;align-items:center;gap:.15rem}.der-link:hover{text-decoration:underline;color:var(--color-primary-light)}.der-link sl-icon{font-size:.8rem}.status-badge{display:inline-flex;padding:.15rem .4rem;border-radius:9999px;font-size:.7rem;font-weight:500}.status-badge.online{background-color:var(--sl-color-success-900);color:var(--sl-color-success-400)}.status-badge.offline{background-color:var(--sl-color-danger-900);color:var(--sl-color-danger-400)}.status-badge.balena-idle{background-color:#6c757d;color:#fff}.status-badge.balena-online{background-color:#28a745;color:#fff}.status-badge.balena-offline{background-color:#dc3545;color:#fff}.status-badge.balena-unknown{background-color:#6c757d;color:#fff}.status-badge.balena-updating{background-color:#ffc107;color:#000}.status-badge.balena-post-provisioning{background-color:#17a2b8;color:#fff}.status-badge.balena-configuring{background-color:#fd7e14;color:#fff}.pagination{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem}.pagination-button,.page-number{padding:.5rem .75rem;border:1px solid var(--color-content-border);border-radius:4px;background-color:var(--color-content-surface);color:var(--color-content-text);cursor:pointer;font-size:.875rem;transition:all .2s}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button:not(:disabled):hover,.page-number:not(.active):hover{background-color:var(--color-content-hover)}.page-number.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.page-numbers{display:flex;gap:.25rem;align-items:center}.page-numbers span{color:var(--color-content-text);opacity:.5}.search-box{flex:1;max-width:400px;position:relative}.search-box input{padding:.5rem;border:1px solid var(--sl-color-neutral-300);border-radius:4px;width:300px}.search-box:before{content:"🔍";position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--color-content-text-secondary);font-size:1rem}.table-legend{display:flex;gap:1.5rem;margin-bottom:.75rem;font-size:.85rem;color:var(--color-content-text-secondary)}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-color{width:1rem;height:1rem;border-radius:4px}.legend-color.high{background:linear-gradient(to right,#ecfdf54d,#d1fae54d);border:1px solid var(--color-primary)}.legend-color.medium{background:linear-gradient(to right,#fff7ed4d,#ffedd54d);border:1px solid #fb923c}.legend-color.low{background:linear-gradient(to right,#fef2f24d,#fee2e24d);border:1px solid #f87171}.explorer-link{color:var(--color-link);text-decoration:none;font-weight:500}.explorer-link.gateway-id{width:auto;font-weight:400;font-size:.8rem}.explorer-link:hover{color:var(--color-link-hover);text-decoration:underline}tr.high-activity{background:linear-gradient(to right,#ecfdf51a,#d1fae51a)}tr.medium-activity{background:linear-gradient(to right,#fff7ed1a,#ffedd51a)}tr.low-activity{background:linear-gradient(to right,#fef2f21a,#fee2e21a)}tr.high-activity:hover{background:linear-gradient(to right,#ecfdf526,#d1fae526)}tr.medium-activity:hover{background:linear-gradient(to right,#fff7ed26,#ffedd526)}tr.low-activity:hover{background:linear-gradient(to right,#fef2f226,#fee2e226)}@media (max-width: 768px){.page-header{flex-direction:column;gap:.75rem}.search-box{max-width:none}}.stats-page{padding:.5rem;max-width:100%;width:100%;box-sizing:border-box;overflow-x:hidden}.page-header{width:100%;margin-bottom:.5rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem}.page-header h1{color:var(--sl-color-neutral-200);font-size:1.4rem;margin:0}.last-updated{font-size:.75rem;color:var(--sl-color-neutral-400);text-align:right}.statistics{margin:.5rem 0;width:100%}.summary-section{margin-bottom:.5rem;padding:.375rem;background:var(--sl-color-neutral-900);border-radius:3px}.summary-header{font-size:.7rem;color:var(--sl-color-neutral-300);font-weight:500;margin-bottom:.25rem}.summary-grid{display:flex;gap:.5rem}.summary-item{background:var(--sl-color-neutral-800);border:1px solid var(--sl-color-neutral-600);border-radius:2px;padding:.125rem .25rem;text-align:center;transition:all .2s ease;flex:1}.summary-item:hover{background:var(--sl-color-neutral-750);border-color:var(--color-primary)}.summary-count{font-size:.9rem;font-weight:700;color:var(--color-primary);line-height:1}.summary-label{font-size:.55rem;color:var(--sl-color-neutral-200);margin:.0625rem 0;font-weight:500}.summary-total{font-size:.5rem;color:var(--sl-color-neutral-400)}.legend{display:flex;gap:.75rem;align-items:center;margin-bottom:.5rem;font-size:.75rem;color:var(--sl-color-neutral-200)}.legend-item{display:flex;align-items:center;gap:.375rem;color:var(--sl-color-neutral-200)}.legend-text{color:var(--sl-color-neutral-200)}.legend-color{width:.75rem;height:.75rem;border-radius:3px;border:1px solid}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.5rem;width:100%;box-sizing:border-box}.manufacturer-card{background:var(--sl-color-neutral-900);border:1px solid var(--sl-color-neutral-600);border-radius:4px;padding:.5rem;transition:all .2s ease;box-sizing:border-box;min-width:0;overflow:hidden}.manufacturer-card:hover{transform:translateY(-2px);border-color:var(--color-primary);background:var(--sl-color-neutral-800);box-shadow:var(--sl-shadow-medium)}.manufacturer-card.high-activity{background:linear-gradient(135deg,#ecfdf51a,#d1fae51a);border-color:var(--color-primary)}.manufacturer-card.medium-activity{background:linear-gradient(135deg,#fff7ed1a,#ffedd51a);border-color:var(--sl-color-warning-500)}.manufacturer-card.low-activity{background:linear-gradient(135deg,#fef2f21a,#fee2e21a);border-color:var(--sl-color-danger-500)}.legend-color.high-activity{background:linear-gradient(135deg,#ecfdf51a,#d1fae51a);border-color:var(--color-primary)}.legend-color.medium-activity{background:linear-gradient(135deg,#fff7ed1a,#ffedd51a);border-color:var(--sl-color-warning-500)}.legend-color.low-activity{background:linear-gradient(135deg,#fef2f21a,#fee2e21a);border-color:var(--sl-color-danger-500)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:1px solid var(--sl-color-neutral-600)}.header-left{display:flex;justify-content:space-between;align-items:center;flex:1}.card-header h3{font-size:.95rem;margin:0;color:var(--sl-color-neutral-100);font-weight:600}.total-count{font-size:.7rem;color:var(--sl-color-neutral-400);font-weight:400}.copy-btn{background:transparent;border:none;padding:.125rem;font-size:.75rem;color:var(--sl-color-neutral-400);cursor:pointer;transition:all .15s ease;border-radius:2px;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem}.copy-btn:hover{background:var(--sl-color-neutral-700);color:var(--sl-color-neutral-200)}.copy-btn:active{background:var(--sl-color-neutral-600);transform:scale(.9)}.overall-activity{margin-bottom:.5rem}.timeframes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem}.timeframe-item{background:var(--sl-color-neutral-800);border:1px solid var(--sl-color-neutral-600);border-radius:3px;padding:.25rem;text-align:center;transition:all .2s ease}.timeframe-item:hover{background:var(--sl-color-neutral-750)}.timeframe-count{font-size:.9rem;font-weight:600;color:var(--sl-color-neutral-100);line-height:1}.timeframe-period{font-size:.6rem;color:var(--sl-color-neutral-400);margin:.0625rem 0}.timeframe-percentage{font-size:.65rem;color:var(--sl-color-neutral-300);font-weight:500}.types-section{padding-top:.5rem;border-top:1px solid var(--sl-color-neutral-600)}.types-section h4{font-size:.75rem;margin:0 0 .25rem;color:var(--sl-color-neutral-200);font-weight:500}.type-item{background:var(--sl-color-neutral-800);border:1px solid var(--sl-color-neutral-600);border-radius:3px;padding:.25rem;margin-bottom:.25rem;transition:all .2s ease}.type-item:last-child{margin-bottom:0}.type-item.high-activity{border-color:var(--color-primary);background:linear-gradient(135deg,#ecfdf51a,#d1fae50d)}.type-item.medium-activity{border-color:var(--sl-color-warning-500);background:linear-gradient(135deg,#fff7ed1a,#ffedd50d)}.type-item.low-activity{border-color:var(--sl-color-danger-500);background:linear-gradient(135deg,#fef2f21a,#fee2e20d)}.type-item.no-devices{border-color:var(--sl-color-neutral-600);background:var(--sl-color-neutral-850);opacity:.6}.type-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.125rem;padding-bottom:.125rem;border-bottom:1px solid var(--sl-color-neutral-600)}.type-name{font-size:.7rem;color:var(--sl-color-neutral-100);font-weight:500}.type-count{font-size:.65rem;color:var(--sl-color-neutral-400)}.type-timeframes{display:flex;flex-direction:column;gap:.0625rem}.type-timeframe{display:flex;justify-content:space-between;padding:.0625rem 0;font-size:.65rem}.period-label{color:var(--sl-color-neutral-400)}.period-value{color:var(--sl-color-neutral-200);font-weight:500}@media (min-width: 1400px){.statistics-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (max-width: 1399px) and (min-width: 1000px){.statistics-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (max-width: 999px) and (min-width: 720px){.statistics-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (max-width: 719px) and (min-width: 500px){.statistics-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (max-width: 500px){.statistics-grid{grid-template-columns:1fr}.page-header{flex-direction:column;gap:.25rem;align-items:flex-start}.last-updated{align-self:stretch;text-align:left}.card-header{flex-direction:column;align-items:flex-start;gap:.125rem}.header-left{width:100%;margin-bottom:.125rem}.copy-btn{align-self:flex-end;font-size:.7rem;width:1.125rem;height:1.125rem}.timeframes-grid{grid-template-columns:repeat(2,1fr)}.timeframe-item{padding:.125rem}.timeframe-count{font-size:.8rem}.timeframe-period{font-size:.55rem}.timeframe-percentage{font-size:.6rem}.summary-section{padding:.25rem;margin-bottom:.375rem}.summary-grid{flex-direction:column;gap:.25rem}.summary-item{padding:.125rem}.summary-count{font-size:.8rem}.summary-label{font-size:.5rem}.summary-total{font-size:.45rem}}.registration-page{padding:2rem;color:#e1e1e1}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;color:#fff}.registration-content{display:flex;gap:2rem;flex-wrap:wrap}.form-section{flex:1;min-width:300px;background:#2a2a2a;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0003;border:1px solid #3a3a3a}.form-section h2{margin-bottom:1.5rem;color:#fff;font-size:1.5rem}.registration-form{display:flex;flex-direction:column;gap:1rem}.form-group label{font-weight:500;color:#e1e1e1}.form-group input{padding:.75rem;border:1px solid #3a3a3a;border-radius:4px;font-size:1rem;background-color:#1a1a1a;color:#fff;transition:all .2s ease}.form-group input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #06c3;background-color:#222}.form-group input::-moz-placeholder{color:#888}.form-group input::placeholder{color:#888}.submit-button{padding:.75rem;border:none;border-radius:4px;background-color:#06c;color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease}.submit-button:hover{background-color:#0052a3;transform:translateY(-1px)}.submit-button:active{transform:translateY(0)}.submit-button.warning{background-color:#dc3545}.submit-button.warning:hover{background-color:#c82333}.status-message{padding:1rem;border-radius:4px;margin-bottom:1rem}.status-message.success{background-color:#19875433;color:#4ade80;border:1px solid #198754}.status-message.error{background-color:#dc354533;color:#ff4d4d;border:1px solid #dc3545}.checkbox-group{display:flex;align-items:center;margin-bottom:1rem}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:#ff4d4d;font-weight:500}.checkbox-group input[type=checkbox]{width:auto;margin:0;cursor:pointer;accent-color:#ff4d4d}.validation-container{--label-color: #666;--value-color: #e0e0e0;--title-color: #666;--accent-blue: #4a90e2;--accent-green: #50b83c;--label-size: 9px;--value-size: 10px;--title-size: 10px;padding:16px;max-width:1600px;margin:0 auto;color:var(--value-color)}.validation-header{margin-bottom:20px}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.page-header h1{margin:0;font-size:20px;font-weight:600;color:#fff}.validation-controls{display:flex;align-items:center;gap:16px}.select-all{display:flex;align-items:center;gap:6px;color:#888;font-size:12px;cursor:pointer}.select-all input[type=checkbox]{margin:0}.validation-description{color:#888;font-size:12px;margin:0}.validation-matches{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;perspective:1000px}.validation-match-card{background:#1a1a1a;border:1px solid #333;border-radius:6px;overflow:hidden;transition:transform .5s ease-in-out}.validation-match-card.selected{border-color:var(--accent-blue);box-shadow:0 0 0 1px var(--accent-blue)}.card-header{background:#222;padding:8px;border-bottom:1px solid #333}.card-selection{display:flex;align-items:center;margin-bottom:6px}.card-selection input[type=checkbox]{margin:0}.card-content{padding:12px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid #333;position:relative;transition:all .5s ease-in-out;transform-style:preserve-3d}.card-content.loading{animation:flipAndSlide 1s ease-in-out forwards;pointer-events:none}@keyframes flipAndSlide{0%{transform:rotateY(0) translate(0);opacity:1}50%{transform:rotateY(90deg) translate(0);opacity:.5}to{transform:rotateY(180deg) translate(-100%);opacity:0}}.der-display{background:#222;border-radius:4px;padding:8px}.der-display h4{margin:0 0 8px;font-size:var(--title-size);color:var(--title-color);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.der-fields{display:flex;flex-direction:column;gap:8px}.der-field{display:flex;align-items:center;gap:8px;position:relative;padding-right:24px}.der-field strong{color:var(--label-color);font-size:var(--label-size);font-weight:600;text-transform:uppercase;letter-spacing:.5px;min-width:80px}.der-field span,.der-field a{font-size:var(--value-size);color:#02cd6b;text-decoration:none}.der-field sl-copy-button{position:absolute;right:0}.der-field sl-copy-button::part(button){color:#666;padding:0;font-size:11px;height:16px;width:16px;min-width:unset}.der-field sl-copy-button::part(button):hover{color:#fff}.gateway-link:after{content:"↗";margin-left:4px;font-size:11px;display:inline-block;opacity:.7;position:relative;top:-1px;transition:all .2s ease}.gateway-link:hover:after{opacity:1;transform:translate(2px,-2px)}.gateway-section{background:#222;border-radius:4px;padding:8px}.gateway-section.api{border-left:2px solid var(--accent-blue)}.gateway-section.hardware{border-left:2px solid var(--accent-green)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.section-header h4{margin:0;font-size:var(--title-size);color:var(--title-color);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.section-header .count{color:#888;font-size:var(--value-size)}.gateway-name{color:var(--value-color);font-size:var(--value-size);font-weight:500}.gateway-type{color:var(--label-color);font-size:var(--label-size);margin:4px 0}.hardware-device{background:#1a1a1a;border-radius:4px;padding:6px;margin-bottom:6px}.hardware-device:last-child{margin-bottom:0}.device-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.copyable-field{display:flex;align-items:center;gap:4px}.field-label{min-width:45px;color:var(--label-color);font-size:var(--value-size);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.field-value{display:flex;align-items:center;justify-content:space-between;background:#1a1a1a;padding:2px 6px;border-radius:3px;flex:1}.truncated-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gateway-link,.truncated-text{color:#02cd6b;font-size:var(--value-size);font-weight:400;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field-value sl-copy-button{flex-shrink:0}.field-value sl-copy-button::part(button){color:#666;padding:0;font-size:11px;height:16px;width:16px;min-width:unset;display:flex;align-items:center;justify-content:center}.field-value sl-copy-button::part(button):hover{color:#fff}.header-fields{display:flex;flex-direction:column;gap:4px}.ders-list{margin-top:8px}.ders-list h5{margin:0 0 4px;font-size:var(--title-size);color:var(--title-color);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.ders-list ul{margin:0;padding:0;list-style:none;max-height:100px;overflow-y:auto}.ders-list li{display:flex;justify-content:space-between;align-items:center;padding:4px 6px;background:#1a1a1a;border-radius:4px;margin-bottom:2px;font-size:var(--value-size);position:relative}.ders-list li:last-child{margin-bottom:0}.ders-list li strong{color:var(--label-color);font-size:var(--label-size);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-right:4px}.ders-list li sl-copy-button{position:absolute;right:4px}.ders-list li span{padding-right:24px}.validation-loading,.validation-error{text-align:center;padding:20px;color:#888;background:#1a1a1a;border-radius:6px}.no-matches{text-align:center;padding:40px;background:#1a1a1a;border-radius:6px;color:#888}.no-matches .icon{font-size:24px;display:block;margin-bottom:12px}.card-footer{padding:8px;background:#222;border-top:1px solid #333;display:flex;justify-content:center}.error-message{position:fixed;top:20px;right:20px;background-color:#f55;color:#fff;padding:15px 20px;border-radius:4px;display:flex;align-items:center;gap:10px;z-index:1000;animation:slideIn .3s ease-out}.error-message button{background:none;border:1px solid white;color:#fff;padding:5px 10px;border-radius:4px;cursor:pointer;margin-left:10px}.error-message button:hover{background:#ffffff1a}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.link-button{background:#02cd6b;color:#1a1a1a;border:none;border-radius:4px;padding:6px 16px;font-size:11px;cursor:pointer;transition:opacity .2s;width:100%}.link-button:hover{opacity:.8}.link-button:disabled{opacity:.5;cursor:not-allowed}.stat-item{color:#888;font-size:14px;margin-left:auto;white-space:nowrap}.stat-item strong{color:var(--value-color);font-weight:500}.device-details-content{padding:.35rem;overflow-y:auto;height:100%}.details-header{margin-bottom:.35rem}.details-header h1{font-size:1.1rem;color:var(--color-content-text);margin-bottom:.25rem}.quick-stats{display:flex;align-items:center;gap:.35rem}.last-seen{color:var(--color-content-text-secondary);font-size:.75rem}.details-panel{background:var(--color-content-surface);border-radius:4px;box-shadow:var(--shadow-sm);padding:.5rem;margin-bottom:.35rem;border:1px solid var(--color-content-border)}.details-panel h2{color:var(--color-content-text);font-size:.85rem;margin-bottom:.35rem;font-weight:600}.resources-grid,.info-grid,.network-grid,.device-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.35rem}.resource-item,.info-item,.network-item,.device-info-item{background:var(--color-content-hover);padding:.35rem;border-radius:4px;border:1px solid var(--color-content-border)}label{display:block;color:var(--color-content-text-secondary);font-size:.7rem;margin-bottom:.15rem;font-weight:500}span{font-size:.8rem;font-weight:500;color:var(--color-content-text)}.uuid{word-break:break-all;font-size:.75rem;font-family:JetBrains Mono,monospace}.status-badge{padding:.15rem .5rem;border-radius:1rem;font-size:.7rem;font-weight:500;text-transform:capitalize}.status-badge.online{background-color:var(--color-primary-transparent);color:var(--color-primary)}.status-badge.offline{background-color:#ef44441a;color:#ef4444}.device-notes{color:var(--color-content-text);line-height:1.4;font-size:.8rem}.logs-window{height:400px;display:flex;flex-direction:column;border-radius:4px;overflow:hidden;border:1px solid #2d2d2d;box-shadow:0 4px 12px #00000026;font-family:JetBrains Mono,Fira Code,monospace;background:#1a1a1a}.logs-header{display:flex;justify-content:space-between;align-items:center;padding:.35rem .5rem;background-color:#2d2d2d;border-bottom:1px solid #333}.logs-header h3{color:#8be9fd;font-size:.85rem;margin:0;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.logs-controls{display:flex;gap:.35rem;align-items:center}.jump-to-latest,.fullscreen-toggle{padding:.25rem .5rem;border:1px solid #444;border-radius:4px;background:#1a1a1a;cursor:pointer;font-size:.75rem;transition:all .2s ease;display:flex;align-items:center;gap:.25rem}.jump-to-latest{color:#50fa7b}.fullscreen-toggle{color:#8be9fd}.jump-to-latest:hover,.fullscreen-toggle:hover{background:#333;border-color:#666}.jump-to-latest:after{content:"↓";font-size:1rem}.logs-content{background-color:#1a1a1a;padding:.5rem;font-size:.8rem;line-height:1.4;overflow-y:auto;flex-grow:1;position:relative}.logs-content pre{margin:0;white-space:pre-wrap;word-wrap:break-word}.log-entry{margin-bottom:.25rem;opacity:.9;transition:opacity .2s ease}.log-entry:hover{opacity:1}.log-timestamp{color:#666;margin-right:.5rem;font-size:.75rem}.log-message.debug{color:#8be9fd}.log-message.info{color:#50fa7b}.log-message.warning{color:#ffb86c}.log-message.error,.error{color:#f55}.logs-content::-webkit-scrollbar{width:8px}.logs-content::-webkit-scrollbar-track{background:#1a1a1a}.logs-content::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.logs-content::-webkit-scrollbar-thumb:hover{background:#444}.split-view.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:#1a1a1a;width:100%;height:100%;display:flex;overflow:hidden;padding:0;padding-bottom:2rem;box-sizing:border-box}.split-view.fullscreen .split-view-left{display:none}.split-view.fullscreen .split-view-right{flex:1;width:100%;height:calc(100% - 2rem);padding:.5rem;box-sizing:border-box;overflow:hidden;max-width:100%}.split-view.fullscreen .logs-window{width:100%;height:100%;max-width:100%;max-height:100%;border-radius:4px;display:flex;flex-direction:column;overflow:hidden}.split-view.fullscreen .logs-content{flex:1;overflow-y:auto;height:auto;max-width:100%}.jwt-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.35rem}.jwt-item{background:var(--color-content-hover);border:1px solid var(--color-content-border);border-radius:4px;padding:.35rem .5rem;display:flex;justify-content:space-between;align-items:center;min-width:0;gap:.5rem}.jwt-info{display:flex;flex-direction:column;gap:.15rem;min-width:0}.jwt-sn{color:var(--color-primary);font-weight:500;font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jwt-timestamp{color:var(--color-content-text-secondary);font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jwt-item sl-copy-button{flex-shrink:0;display:flex;align-items:center;justify-content:center}.jwt-item sl-copy-button::part(button){color:var(--color-primary);border:none;width:28px;height:28px;padding:0;border-radius:4px;font-size:1rem;display:flex;align-items:center;justify-content:center;min-width:unset}.jwt-item sl-copy-button::part(button):hover{background-color:var(--color-primary-transparent)}.pubkey,.compact-key{word-break:break-all;font-size:.75rem;font-family:JetBrains Mono,monospace;width:100%;display:block}.copyable-content{display:flex;align-items:center;gap:.5rem}.copyable-content span{overflow:hidden;text-overflow:ellipsis}.pubkey{font-family:monospace}.config-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.35rem}.config-card{background:var(--color-content-hover);border:1px solid var(--color-content-border);border-radius:4px;padding:.35rem .5rem;display:flex;flex-direction:column;gap:.35rem}.config-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:var(--color-content-surface);border-bottom:1px solid var(--color-content-border)}.header-left{display:flex;align-items:center}.device-info{display:flex;align-items:center;gap:6px}.device-info sl-copy-button::part(button){color:var(--color-content-text-secondary);padding:4px;border:none;background:transparent;height:20px;width:20px;display:flex;align-items:center;justify-content:center}.device-info sl-copy-button::part(button):hover{color:var(--color-primary);background:var(--color-content-hover);border-radius:4px}.device-type{font-size:.8rem;font-weight:500;color:var(--color-primary);margin-right:8px}.header-right{display:flex;align-items:center}.config-details{display:flex;flex-direction:column;gap:.15rem}.detail-item{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.25rem}.detail-item label{min-width:100px;font-size:.7rem;color:var(--color-content-text-secondary);font-weight:500}.detail-item .copyable{display:flex;align-items:center;gap:.5rem;flex:1}.detail-item .value-text{font-size:.75rem;color:var(--color-content-text);word-break:break-all}.detail-item sl-copy-button::part(button){font-size:.8rem;padding:.15rem;color:var(--color-primary)}.details-panel h3{color:var(--color-content-text);font-size:.875rem;font-weight:600;margin:.75rem 0 .35rem}.messages-list{display:flex;flex-direction:column;gap:.15rem;margin-top:.5rem;height:150px;min-height:150px;overflow-y:auto;border:1px solid var(--color-content-border);border-radius:4px;padding:.25rem;background:var(--color-content-surface)}.messages-list::-webkit-scrollbar{width:6px}.messages-list::-webkit-scrollbar-track{background:var(--color-content-surface);border-radius:3px}.messages-list::-webkit-scrollbar-thumb{background:var(--color-content-border);border-radius:3px}.messages-list::-webkit-scrollbar-thumb:hover{background:var(--color-content-text-secondary)}.message-item{display:grid;grid-template-columns:45px 60px minmax(0,1fr);gap:.35rem;padding:.15rem .35rem;border-radius:3px;background:var(--color-content-hover);font-size:.65rem;align-items:center;line-height:1.2}.message-id{color:var(--color-content-text-secondary);font-family:monospace;font-size:.6rem}.message-type{color:var(--color-content-text);font-weight:500;font-size:.6rem}.message-message{color:var(--color-content-text);overflow-wrap:break-word;word-break:break-word;font-size:.65rem}.message-timestamp{color:var(--color-content-text-secondary);font-size:.6rem;grid-column:1 / -1}.message-item.info{border-left:2px solid var(--color-primary)}.message-item.warning{border-left:2px solid #f59e0b}.message-item.error{border-left:2px solid #ef4444}.device-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.35rem}.device-info-item{display:flex;flex-direction:column;justify-content:flex-start;min-height:60px;background:var(--color-content-hover);padding:.35rem;border-radius:4px;border:1px solid var(--color-content-border);width:100%}.device-info-item label{margin-bottom:.25rem}.device-info-item .copyable-content{flex:1;display:flex;align-items:center;width:100%;min-width:0}.device-info-item .copyable-content span{flex:1;min-width:0}.details-panel .device-info-grid{grid-template-columns:repeat(2,1fr)}.details-panel.full-width .device-info-grid{grid-template-columns:repeat(4,1fr)}.device-info-item .explorer-link{color:var(--color-primary);text-decoration:none;font-size:.875rem;display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap;width:-moz-fit-content;width:fit-content;min-width:0}.device-info-item .copyable-content .explorer-link{flex:0 1 auto}.device-info-item .explorer-link:hover{text-decoration:underline;color:var(--color-primary-dark)}.device-info-item .explorer-link:after{content:"↗";font-size:.75rem}.endpoints-list{display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem}.endpoint-item{display:flex;align-items:center;justify-content:space-between;background:var(--color-content-hover);padding:.35rem .5rem;border-radius:4px;border:1px solid var(--color-content-border)}.endpoint-item span{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--color-primary)}.connection-type{padding:.15rem .5rem;border-radius:4px;font-size:.65rem;font-weight:500;background-color:var(--color-primary-transparent);color:var(--color-primary)}.jwt-actions{display:flex;align-items:center;gap:.35rem}.jwt-debugger-link{color:var(--color-primary);display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;transition:background-color .2s ease}.jwt-debugger-link:hover{background-color:var(--color-primary-transparent)}.jwt-debugger-link sl-icon{font-size:1rem}.log-entry .log-message.error{font-weight:500}.truncated-text{font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--color-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px;display:inline-block}.panel-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.panel-header h2{margin:0}.count-badge{background-color:var(--color-primary-transparent);color:var(--color-primary);padding:.15rem .5rem;border-radius:9999px;font-size:.7rem;font-weight:500;display:inline-flex;align-items:center}.summary-card{display:flex;align-items:center;justify-content:center;min-height:120px;background:var(--color-content-hover)!important;border:1px solid var(--color-content-border)!important}.summary-content{display:flex;flex-direction:column;align-items:center;gap:.25rem}.summary-number{font-size:2.5rem;font-weight:600;color:var(--color-primary);line-height:1}.summary-label{font-size:.75rem;color:var(--color-content-text);font-weight:500}.download-logs{background-color:#4a90e2;color:#fff;border:none;padding:5px 10px;border-radius:4px;cursor:pointer;margin-right:8px;font-size:.9em;display:flex;align-items:center;gap:5px}.download-logs:hover{background-color:#357abd}.download-logs:active{background-color:#2a5f96}.logs-controls button,.jump-to-latest,.download-logs,.fullscreen-toggle{background:var(--color-content-surface);border:2px solid var(--color-content-border);color:var(--color-content-text);padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.9rem;font-weight:500;box-shadow:var(--shadow-sm)}.logs-controls button:hover,.jump-to-latest:hover,.download-logs:hover,.fullscreen-toggle:hover{background:var(--color-content-hover);transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--color-content-text-secondary)}.split-view-right{margin-bottom:2rem}.der-data-page{padding:1rem;display:flex;flex-direction:column;gap:1.5rem}.der-data-header{display:flex;flex-direction:column;gap:1rem}.der-data-header h1{margin:0;font-size:1.5rem;font-weight:600}.der-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;background-color:var(--color-content-surface);padding:1rem;border-radius:4px;border:1px solid var(--color-content-border)}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item label{font-size:.875rem;color:var(--color-content-text-secondary);font-weight:500}.info-item span{font-family:JetBrains Mono,monospace;font-size:.875rem}.der-data-table{width:100%;border-collapse:collapse;margin-bottom:1rem}.der-data-table th,.der-data-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--sl-color-neutral-600);font-size:.875rem;color:var(--sl-color-neutral-200)}.der-data-table th{background-color:var(--sl-color-neutral-800);font-weight:600;position:sticky;top:0}.der-data-table tr:hover{background-color:var(--sl-color-neutral-700)}.search-container{display:flex;align-items:center;gap:1rem}.search-input{flex:1;max-width:400px;padding:.5rem;border:1px solid var(--sl-color-neutral-600);border-radius:4px;font-size:.875rem;background-color:var(--sl-color-neutral-900);color:var(--sl-color-neutral-200)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-transparent)}.search-results-count{font-size:.875rem;color:var(--sl-color-neutral-400)}.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sort-icon{margin-left:.25rem;opacity:.5}.sortable:hover .sort-icon{opacity:1}.description-cell{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}.description-cell:hover:after{content:attr(title);position:absolute;left:0;top:100%;background:var(--sl-color-neutral-800);padding:8px;border:1px solid var(--sl-color-neutral-600);border-radius:4px;z-index:1000;width:-moz-max-content;width:max-content;max-width:400px;white-space:normal;box-shadow:var(--sl-shadow-medium);color:var(--sl-color-neutral-200)}.json-data-container{background:#1e1e1e;border-radius:4px;padding:20px;margin:20px 0;overflow:auto;max-height:80vh}.json-content{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:14px;line-height:1.5;margin:0;white-space:pre;color:#d4d4d4}.json-string{color:#ce9178}.json-number{color:#b5cea8}.json-boolean,.json-null{color:#569cd6}.json-key{color:#9cdcfe}.json-bracket,.json-comma{color:#d4d4d4}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:1rem;background:var(--sl-color-neutral-900)}.login-card{background:var(--sl-color-neutral-800);padding:2rem;border-radius:12px;box-shadow:var(--sl-shadow-large);width:100%;max-width:400px;border:1px solid var(--sl-color-neutral-600)}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{color:var(--sl-color-neutral-200);font-size:1.5rem;margin-bottom:.5rem}.login-header p{color:var(--sl-color-neutral-400);font-size:.875rem}.login-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:var(--sl-color-neutral-300);font-size:.875rem;font-weight:500}.form-group input{padding:.75rem;border:1px solid var(--sl-color-neutral-600);border-radius:6px;background:var(--sl-color-neutral-900);color:var(--sl-color-neutral-200);font-size:.875rem;transition:all .2s ease}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-transparent)}.form-group input::-moz-placeholder{color:var(--sl-color-neutral-500)}.form-group input::placeholder{color:var(--sl-color-neutral-500)}.login-button{width:100%;padding:.75rem;background-color:var(--color-primary);color:var(--sl-color-neutral-0);border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:1rem}.login-button:hover{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--sl-shadow-medium)}.error-message{color:var(--sl-color-danger-500);margin-top:.5rem;font-size:.875rem;text-align:center}.login-logo{width:240px;height:auto;margin-bottom:1rem;filter:brightness(.9)}:root,:host,.sl-theme-light{color-scheme:light;--sl-color-gray-50: hsl(0 0% 97.5%);--sl-color-gray-100: hsl(240 4.8% 95.9%);--sl-color-gray-200: hsl(240 5.9% 90%);--sl-color-gray-300: hsl(240 4.9% 83.9%);--sl-color-gray-400: hsl(240 5% 64.9%);--sl-color-gray-500: hsl(240 3.8% 46.1%);--sl-color-gray-600: hsl(240 5.2% 33.9%);--sl-color-gray-700: hsl(240 5.3% 26.1%);--sl-color-gray-800: hsl(240 3.7% 15.9%);--sl-color-gray-900: hsl(240 5.9% 10%);--sl-color-gray-950: hsl(240 7.3% 8%);--sl-color-red-50: hsl(0 85.7% 97.3%);--sl-color-red-100: hsl(0 93.3% 94.1%);--sl-color-red-200: hsl(0 96.3% 89.4%);--sl-color-red-300: hsl(0 93.5% 81.8%);--sl-color-red-400: hsl(0 90.6% 70.8%);--sl-color-red-500: hsl(0 84.2% 60.2%);--sl-color-red-600: hsl(0 72.2% 50.6%);--sl-color-red-700: hsl(0 73.7% 41.8%);--sl-color-red-800: hsl(0 70% 35.3%);--sl-color-red-900: hsl(0 62.8% 30.6%);--sl-color-red-950: hsl(0 60% 19.6%);--sl-color-orange-50: hsl(33.3 100% 96.5%);--sl-color-orange-100: hsl(34.3 100% 91.8%);--sl-color-orange-200: hsl(32.1 97.7% 83.1%);--sl-color-orange-300: hsl(30.7 97.2% 72.4%);--sl-color-orange-400: hsl(27 96% 61%);--sl-color-orange-500: hsl(24.6 95% 53.1%);--sl-color-orange-600: hsl(20.5 90.2% 48.2%);--sl-color-orange-700: hsl(17.5 88.3% 40.4%);--sl-color-orange-800: hsl(15 79.1% 33.7%);--sl-color-orange-900: hsl(15.3 74.6% 27.8%);--sl-color-orange-950: hsl(15.2 69.1% 19%);--sl-color-amber-50: hsl(48 100% 96.1%);--sl-color-amber-100: hsl(48 96.5% 88.8%);--sl-color-amber-200: hsl(48 96.6% 76.7%);--sl-color-amber-300: hsl(45.9 96.7% 64.5%);--sl-color-amber-400: hsl(43.3 96.4% 56.3%);--sl-color-amber-500: hsl(37.7 92.1% 50.2%);--sl-color-amber-600: hsl(32.1 94.6% 43.7%);--sl-color-amber-700: hsl(26 90.5% 37.1%);--sl-color-amber-800: hsl(22.7 82.5% 31.4%);--sl-color-amber-900: hsl(21.7 77.8% 26.5%);--sl-color-amber-950: hsl(22.9 74.1% 16.7%);--sl-color-yellow-50: hsl(54.5 91.7% 95.3%);--sl-color-yellow-100: hsl(54.9 96.7% 88%);--sl-color-yellow-200: hsl(52.8 98.3% 76.9%);--sl-color-yellow-300: hsl(50.4 97.8% 63.5%);--sl-color-yellow-400: hsl(47.9 95.8% 53.1%);--sl-color-yellow-500: hsl(45.4 93.4% 47.5%);--sl-color-yellow-600: hsl(40.6 96.1% 40.4%);--sl-color-yellow-700: hsl(35.5 91.7% 32.9%);--sl-color-yellow-800: hsl(31.8 81% 28.8%);--sl-color-yellow-900: hsl(28.4 72.5% 25.7%);--sl-color-yellow-950: hsl(33.1 69% 13.9%);--sl-color-lime-50: hsl(78.3 92% 95.1%);--sl-color-lime-100: hsl(79.6 89.1% 89.2%);--sl-color-lime-200: hsl(80.9 88.5% 79.6%);--sl-color-lime-300: hsl(82 84.5% 67.1%);--sl-color-lime-400: hsl(82.7 78% 55.5%);--sl-color-lime-500: hsl(83.7 80.5% 44.3%);--sl-color-lime-600: hsl(84.8 85.2% 34.5%);--sl-color-lime-700: hsl(85.9 78.4% 27.3%);--sl-color-lime-800: hsl(86.3 69% 22.7%);--sl-color-lime-900: hsl(87.6 61.2% 20.2%);--sl-color-lime-950: hsl(86.5 60.6% 13.9%);--sl-color-green-50: hsl(138.5 76.5% 96.7%);--sl-color-green-100: hsl(140.6 84.2% 92.5%);--sl-color-green-200: hsl(141 78.9% 85.1%);--sl-color-green-300: hsl(141.7 76.6% 73.1%);--sl-color-green-400: hsl(141.9 69.2% 58%);--sl-color-green-500: hsl(142.1 70.6% 45.3%);--sl-color-green-600: hsl(142.1 76.2% 36.3%);--sl-color-green-700: hsl(142.4 71.8% 29.2%);--sl-color-green-800: hsl(142.8 64.2% 24.1%);--sl-color-green-900: hsl(143.8 61.2% 20.2%);--sl-color-green-950: hsl(144.3 60.7% 12%);--sl-color-emerald-50: hsl(151.8 81% 95.9%);--sl-color-emerald-100: hsl(149.3 80.4% 90%);--sl-color-emerald-200: hsl(152.4 76% 80.4%);--sl-color-emerald-300: hsl(156.2 71.6% 66.9%);--sl-color-emerald-400: hsl(158.1 64.4% 51.6%);--sl-color-emerald-500: hsl(160.1 84.1% 39.4%);--sl-color-emerald-600: hsl(161.4 93.5% 30.4%);--sl-color-emerald-700: hsl(162.9 93.5% 24.3%);--sl-color-emerald-800: hsl(163.1 88.1% 19.8%);--sl-color-emerald-900: hsl(164.2 85.7% 16.5%);--sl-color-emerald-950: hsl(164.3 87.5% 9.4%);--sl-color-teal-50: hsl(166.2 76.5% 96.7%);--sl-color-teal-100: hsl(167.2 85.5% 89.2%);--sl-color-teal-200: hsl(168.4 83.8% 78.2%);--sl-color-teal-300: hsl(170.6 76.9% 64.3%);--sl-color-teal-400: hsl(172.5 66% 50.4%);--sl-color-teal-500: hsl(173.4 80.4% 40%);--sl-color-teal-600: hsl(174.7 83.9% 31.6%);--sl-color-teal-700: hsl(175.3 77.4% 26.1%);--sl-color-teal-800: hsl(176.1 69.4% 21.8%);--sl-color-teal-900: hsl(175.9 60.8% 19%);--sl-color-teal-950: hsl(176.5 58.6% 11.4%);--sl-color-cyan-50: hsl(183.2 100% 96.3%);--sl-color-cyan-100: hsl(185.1 95.9% 90.4%);--sl-color-cyan-200: hsl(186.2 93.5% 81.8%);--sl-color-cyan-300: hsl(187 92.4% 69%);--sl-color-cyan-400: hsl(187.9 85.7% 53.3%);--sl-color-cyan-500: hsl(188.7 94.5% 42.7%);--sl-color-cyan-600: hsl(191.6 91.4% 36.5%);--sl-color-cyan-700: hsl(192.9 82.3% 31%);--sl-color-cyan-800: hsl(194.4 69.6% 27.1%);--sl-color-cyan-900: hsl(196.4 63.6% 23.7%);--sl-color-cyan-950: hsl(196.8 61% 16.1%);--sl-color-sky-50: hsl(204 100% 97.1%);--sl-color-sky-100: hsl(204 93.8% 93.7%);--sl-color-sky-200: hsl(200.6 94.4% 86.1%);--sl-color-sky-300: hsl(199.4 95.5% 73.9%);--sl-color-sky-400: hsl(198.4 93.2% 59.6%);--sl-color-sky-500: hsl(198.6 88.7% 48.4%);--sl-color-sky-600: hsl(200.4 98% 39.4%);--sl-color-sky-700: hsl(201.3 96.3% 32.2%);--sl-color-sky-800: hsl(201 90% 27.5%);--sl-color-sky-900: hsl(202 80.3% 23.9%);--sl-color-sky-950: hsl(202.3 73.8% 16.5%);--sl-color-blue-50: hsl(213.8 100% 96.9%);--sl-color-blue-100: hsl(214.3 94.6% 92.7%);--sl-color-blue-200: hsl(213.3 96.9% 87.3%);--sl-color-blue-300: hsl(211.7 96.4% 78.4%);--sl-color-blue-400: hsl(213.1 93.9% 67.8%);--sl-color-blue-500: hsl(217.2 91.2% 59.8%);--sl-color-blue-600: hsl(221.2 83.2% 53.3%);--sl-color-blue-700: hsl(224.3 76.3% 48%);--sl-color-blue-800: hsl(225.9 70.7% 40.2%);--sl-color-blue-900: hsl(224.4 64.3% 32.9%);--sl-color-blue-950: hsl(226.2 55.3% 18.4%);--sl-color-indigo-50: hsl(225.9 100% 96.7%);--sl-color-indigo-100: hsl(226.5 100% 93.9%);--sl-color-indigo-200: hsl(228 96.5% 88.8%);--sl-color-indigo-300: hsl(229.7 93.5% 81.8%);--sl-color-indigo-400: hsl(234.5 89.5% 73.9%);--sl-color-indigo-500: hsl(238.7 83.5% 66.7%);--sl-color-indigo-600: hsl(243.4 75.4% 58.6%);--sl-color-indigo-700: hsl(244.5 57.9% 50.6%);--sl-color-indigo-800: hsl(243.7 54.5% 41.4%);--sl-color-indigo-900: hsl(242.2 47.4% 34.3%);--sl-color-indigo-950: hsl(243.5 43.6% 22.9%);--sl-color-violet-50: hsl(250 100% 97.6%);--sl-color-violet-100: hsl(251.4 91.3% 95.5%);--sl-color-violet-200: hsl(250.5 95.2% 91.8%);--sl-color-violet-300: hsl(252.5 94.7% 85.1%);--sl-color-violet-400: hsl(255.1 91.7% 76.3%);--sl-color-violet-500: hsl(258.3 89.5% 66.3%);--sl-color-violet-600: hsl(262.1 83.3% 57.8%);--sl-color-violet-700: hsl(263.4 70% 50.4%);--sl-color-violet-800: hsl(263.4 69.3% 42.2%);--sl-color-violet-900: hsl(263.5 67.4% 34.9%);--sl-color-violet-950: hsl(265.1 61.5% 21.4%);--sl-color-purple-50: hsl(270 100% 98%);--sl-color-purple-100: hsl(268.7 100% 95.5%);--sl-color-purple-200: hsl(268.6 100% 91.8%);--sl-color-purple-300: hsl(269.2 97.4% 85.1%);--sl-color-purple-400: hsl(270 95.2% 75.3%);--sl-color-purple-500: hsl(270.7 91% 65.1%);--sl-color-purple-600: hsl(271.5 81.3% 55.9%);--sl-color-purple-700: hsl(272.1 71.7% 47.1%);--sl-color-purple-800: hsl(272.9 67.2% 39.4%);--sl-color-purple-900: hsl(273.6 65.6% 32%);--sl-color-purple-950: hsl(276 59.5% 16.5%);--sl-color-fuchsia-50: hsl(289.1 100% 97.8%);--sl-color-fuchsia-100: hsl(287 100% 95.5%);--sl-color-fuchsia-200: hsl(288.3 95.8% 90.6%);--sl-color-fuchsia-300: hsl(291.1 93.1% 82.9%);--sl-color-fuchsia-400: hsl(292 91.4% 72.5%);--sl-color-fuchsia-500: hsl(292.2 84.1% 60.6%);--sl-color-fuchsia-600: hsl(293.4 69.5% 48.8%);--sl-color-fuchsia-700: hsl(294.7 72.4% 39.8%);--sl-color-fuchsia-800: hsl(295.4 70.2% 32.9%);--sl-color-fuchsia-900: hsl(296.7 63.6% 28%);--sl-color-fuchsia-950: hsl(297.1 56.8% 14.5%);--sl-color-pink-50: hsl(327.3 73.3% 97.1%);--sl-color-pink-100: hsl(325.7 77.8% 94.7%);--sl-color-pink-200: hsl(325.9 84.6% 89.8%);--sl-color-pink-300: hsl(327.4 87.1% 81.8%);--sl-color-pink-400: hsl(328.6 85.5% 70.2%);--sl-color-pink-500: hsl(330.4 81.2% 60.4%);--sl-color-pink-600: hsl(333.3 71.4% 50.6%);--sl-color-pink-700: hsl(335.1 77.6% 42%);--sl-color-pink-800: hsl(335.8 74.4% 35.3%);--sl-color-pink-900: hsl(335.9 69% 30.4%);--sl-color-pink-950: hsl(336.2 65.4% 15.9%);--sl-color-rose-50: hsl(355.7 100% 97.3%);--sl-color-rose-100: hsl(355.6 100% 94.7%);--sl-color-rose-200: hsl(352.7 96.1% 90%);--sl-color-rose-300: hsl(352.6 95.7% 81.8%);--sl-color-rose-400: hsl(351.3 94.5% 71.4%);--sl-color-rose-500: hsl(349.7 89.2% 60.2%);--sl-color-rose-600: hsl(346.8 77.2% 49.8%);--sl-color-rose-700: hsl(345.3 82.7% 40.8%);--sl-color-rose-800: hsl(343.4 79.7% 34.7%);--sl-color-rose-900: hsl(341.5 75.5% 30.4%);--sl-color-rose-950: hsl(341.3 70.1% 17.1%);--sl-color-primary-50: var(--sl-color-sky-50);--sl-color-primary-100: var(--sl-color-sky-100);--sl-color-primary-200: var(--sl-color-sky-200);--sl-color-primary-300: var(--sl-color-sky-300);--sl-color-primary-400: var(--sl-color-sky-400);--sl-color-primary-500: var(--sl-color-sky-500);--sl-color-primary-600: var(--sl-color-sky-600);--sl-color-primary-700: var(--sl-color-sky-700);--sl-color-primary-800: var(--sl-color-sky-800);--sl-color-primary-900: var(--sl-color-sky-900);--sl-color-primary-950: var(--sl-color-sky-950);--sl-color-success-50: var(--sl-color-green-50);--sl-color-success-100: var(--sl-color-green-100);--sl-color-success-200: var(--sl-color-green-200);--sl-color-success-300: var(--sl-color-green-300);--sl-color-success-400: var(--sl-color-green-400);--sl-color-success-500: var(--sl-color-green-500);--sl-color-success-600: var(--sl-color-green-600);--sl-color-success-700: var(--sl-color-green-700);--sl-color-success-800: var(--sl-color-green-800);--sl-color-success-900: var(--sl-color-green-900);--sl-color-success-950: var(--sl-color-green-950);--sl-color-warning-50: var(--sl-color-amber-50);--sl-color-warning-100: var(--sl-color-amber-100);--sl-color-warning-200: var(--sl-color-amber-200);--sl-color-warning-300: var(--sl-color-amber-300);--sl-color-warning-400: var(--sl-color-amber-400);--sl-color-warning-500: var(--sl-color-amber-500);--sl-color-warning-600: var(--sl-color-amber-600);--sl-color-warning-700: var(--sl-color-amber-700);--sl-color-warning-800: var(--sl-color-amber-800);--sl-color-warning-900: var(--sl-color-amber-900);--sl-color-warning-950: var(--sl-color-amber-950);--sl-color-danger-50: var(--sl-color-red-50);--sl-color-danger-100: var(--sl-color-red-100);--sl-color-danger-200: var(--sl-color-red-200);--sl-color-danger-300: var(--sl-color-red-300);--sl-color-danger-400: var(--sl-color-red-400);--sl-color-danger-500: var(--sl-color-red-500);--sl-color-danger-600: var(--sl-color-red-600);--sl-color-danger-700: var(--sl-color-red-700);--sl-color-danger-800: var(--sl-color-red-800);--sl-color-danger-900: var(--sl-color-red-900);--sl-color-danger-950: var(--sl-color-red-950);--sl-color-neutral-50: var(--sl-color-gray-50);--sl-color-neutral-100: var(--sl-color-gray-100);--sl-color-neutral-200: var(--sl-color-gray-200);--sl-color-neutral-300: var(--sl-color-gray-300);--sl-color-neutral-400: var(--sl-color-gray-400);--sl-color-neutral-500: var(--sl-color-gray-500);--sl-color-neutral-600: var(--sl-color-gray-600);--sl-color-neutral-700: var(--sl-color-gray-700);--sl-color-neutral-800: var(--sl-color-gray-800);--sl-color-neutral-900: var(--sl-color-gray-900);--sl-color-neutral-950: var(--sl-color-gray-950);--sl-color-neutral-0: hsl(0, 0%, 100%);--sl-color-neutral-1000: hsl(0, 0%, 0%);--sl-border-radius-small: .1875rem;--sl-border-radius-medium: .25rem;--sl-border-radius-large: .5rem;--sl-border-radius-x-large: 1rem;--sl-border-radius-circle: 50%;--sl-border-radius-pill: 9999px;--sl-shadow-x-small: 0 1px 2px hsl(240 3.8% 46.1% / 6%);--sl-shadow-small: 0 1px 2px hsl(240 3.8% 46.1% / 12%);--sl-shadow-medium: 0 2px 4px hsl(240 3.8% 46.1% / 12%);--sl-shadow-large: 0 2px 8px hsl(240 3.8% 46.1% / 12%);--sl-shadow-x-large: 0 4px 16px hsl(240 3.8% 46.1% / 12%);--sl-spacing-3x-small: .125rem;--sl-spacing-2x-small: .25rem;--sl-spacing-x-small: .5rem;--sl-spacing-small: .75rem;--sl-spacing-medium: 1rem;--sl-spacing-large: 1.25rem;--sl-spacing-x-large: 1.75rem;--sl-spacing-2x-large: 2.25rem;--sl-spacing-3x-large: 3rem;--sl-spacing-4x-large: 4.5rem;--sl-transition-x-slow: 1s;--sl-transition-slow: .5s;--sl-transition-medium: .25s;--sl-transition-fast: .15s;--sl-transition-x-fast: 50ms;--sl-font-mono: SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;--sl-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--sl-font-serif: Georgia, "Times New Roman", serif;--sl-font-size-2x-small: .625rem;--sl-font-size-x-small: .75rem;--sl-font-size-small: .875rem;--sl-font-size-medium: 1rem;--sl-font-size-large: 1.25rem;--sl-font-size-x-large: 1.5rem;--sl-font-size-2x-large: 2.25rem;--sl-font-size-3x-large: 3rem;--sl-font-size-4x-large: 4.5rem;--sl-font-weight-light: 300;--sl-font-weight-normal: 400;--sl-font-weight-semibold: 500;--sl-font-weight-bold: 700;--sl-letter-spacing-denser: -.03em;--sl-letter-spacing-dense: -.015em;--sl-letter-spacing-normal: normal;--sl-letter-spacing-loose: .075em;--sl-letter-spacing-looser: .15em;--sl-line-height-denser: 1;--sl-line-height-dense: 1.4;--sl-line-height-normal: 1.8;--sl-line-height-loose: 2.2;--sl-line-height-looser: 2.6;--sl-focus-ring-color: var(--sl-color-primary-600);--sl-focus-ring-style: solid;--sl-focus-ring-width: 3px;--sl-focus-ring: var(--sl-focus-ring-style) var(--sl-focus-ring-width) var(--sl-focus-ring-color);--sl-focus-ring-offset: 1px;--sl-button-font-size-small: var(--sl-font-size-x-small);--sl-button-font-size-medium: var(--sl-font-size-small);--sl-button-font-size-large: var(--sl-font-size-medium);--sl-input-height-small: 1.875rem;--sl-input-height-medium: 2.5rem;--sl-input-height-large: 3.125rem;--sl-input-background-color: var(--sl-color-neutral-0);--sl-input-background-color-hover: var(--sl-input-background-color);--sl-input-background-color-focus: var(--sl-input-background-color);--sl-input-background-color-disabled: var(--sl-color-neutral-100);--sl-input-border-color: var(--sl-color-neutral-300);--sl-input-border-color-hover: var(--sl-color-neutral-400);--sl-input-border-color-focus: var(--sl-color-primary-500);--sl-input-border-color-disabled: var(--sl-color-neutral-300);--sl-input-border-width: 1px;--sl-input-required-content: "*";--sl-input-required-content-offset: -2px;--sl-input-required-content-color: var(--sl-input-label-color);--sl-input-border-radius-small: var(--sl-border-radius-medium);--sl-input-border-radius-medium: var(--sl-border-radius-medium);--sl-input-border-radius-large: var(--sl-border-radius-medium);--sl-input-font-family: var(--sl-font-sans);--sl-input-font-weight: var(--sl-font-weight-normal);--sl-input-font-size-small: var(--sl-font-size-small);--sl-input-font-size-medium: var(--sl-font-size-medium);--sl-input-font-size-large: var(--sl-font-size-large);--sl-input-letter-spacing: var(--sl-letter-spacing-normal);--sl-input-color: var(--sl-color-neutral-700);--sl-input-color-hover: var(--sl-color-neutral-700);--sl-input-color-focus: var(--sl-color-neutral-700);--sl-input-color-disabled: var(--sl-color-neutral-900);--sl-input-icon-color: var(--sl-color-neutral-500);--sl-input-icon-color-hover: var(--sl-color-neutral-600);--sl-input-icon-color-focus: var(--sl-color-neutral-600);--sl-input-placeholder-color: var(--sl-color-neutral-500);--sl-input-placeholder-color-disabled: var(--sl-color-neutral-600);--sl-input-spacing-small: var(--sl-spacing-small);--sl-input-spacing-medium: var(--sl-spacing-medium);--sl-input-spacing-large: var(--sl-spacing-large);--sl-input-focus-ring-color: hsl(198.6 88.7% 48.4% / 40%);--sl-input-focus-ring-offset: 0;--sl-input-filled-background-color: var(--sl-color-neutral-100);--sl-input-filled-background-color-hover: var(--sl-color-neutral-100);--sl-input-filled-background-color-focus: var(--sl-color-neutral-100);--sl-input-filled-background-color-disabled: var(--sl-color-neutral-100);--sl-input-filled-color: var(--sl-color-neutral-800);--sl-input-filled-color-hover: var(--sl-color-neutral-800);--sl-input-filled-color-focus: var(--sl-color-neutral-700);--sl-input-filled-color-disabled: var(--sl-color-neutral-800);--sl-input-label-font-size-small: var(--sl-font-size-small);--sl-input-label-font-size-medium: var(--sl-font-size-medium);--sl-input-label-font-size-large: var(--sl-font-size-large);--sl-input-label-color: inherit;--sl-input-help-text-font-size-small: var(--sl-font-size-x-small);--sl-input-help-text-font-size-medium: var(--sl-font-size-small);--sl-input-help-text-font-size-large: var(--sl-font-size-medium);--sl-input-help-text-color: var(--sl-color-neutral-500);--sl-toggle-size-small: .875rem;--sl-toggle-size-medium: 1.125rem;--sl-toggle-size-large: 1.375rem;--sl-overlay-background-color: hsl(240 3.8% 46.1% / 33%);--sl-panel-background-color: var(--sl-color-neutral-0);--sl-panel-border-color: var(--sl-color-neutral-200);--sl-panel-border-width: 1px;--sl-tooltip-border-radius: var(--sl-border-radius-medium);--sl-tooltip-background-color: var(--sl-color-neutral-800);--sl-tooltip-color: var(--sl-color-neutral-0);--sl-tooltip-font-family: var(--sl-font-sans);--sl-tooltip-font-weight: var(--sl-font-weight-normal);--sl-tooltip-font-size: var(--sl-font-size-small);--sl-tooltip-line-height: var(--sl-line-height-dense);--sl-tooltip-padding: var(--sl-spacing-2x-small) var(--sl-spacing-x-small);--sl-tooltip-arrow-size: 6px;--sl-z-index-drawer: 700;--sl-z-index-dialog: 800;--sl-z-index-dropdown: 900;--sl-z-index-toast: 950;--sl-z-index-tooltip: 1000}@supports (scrollbar-gutter: stable){.sl-scroll-lock{scrollbar-gutter:var(--sl-scroll-lock-gutter)!important}.sl-scroll-lock body{overflow:hidden!important}}@supports not (scrollbar-gutter: stable){.sl-scroll-lock body{padding-right:var(--sl-scroll-lock-size)!important;overflow:hidden!important}}.sl-toast-stack{position:fixed;top:0;inset-inline-end:0;z-index:var(--sl-z-index-toast);width:28rem;max-width:100%;max-height:100%;overflow:auto}.sl-toast-stack sl-alert{margin:var(--sl-spacing-medium)}.sl-toast-stack sl-alert::part(base){box-shadow:var(--sl-shadow-large)}*,: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:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,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}.inline{display:inline}.flex{display:flex}.table{display:table}.min-h-screen{min-height:100vh}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.items-center{align-items:center}.justify-center{justify-content:center}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.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)}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--color-primary: #02cd6b;--color-primary-dark: #02b55e;--color-primary-light: #34d399;--color-primary-transparent: rgba(2, 205, 107, .1);--color-dark: #ffffff;--color-dark-lighter: #e0e0e0;--color-nav-bg: #1a1a1a;--color-nav-surface: #1f1f1f;--color-nav-hover: #2a2a2a;--color-nav-border: rgba(255, 255, 255, .1);--color-nav-text: #ffffff;--color-nav-text-secondary: #a0a0a0;--color-content-bg: #121212;--color-content-surface: #1a1a1a;--color-content-hover: #242424;--color-content-border: rgba(255, 255, 255, .1);--color-content-text: #ffffff;--color-content-text-secondary: #a0a0a0;--color-success: #10b981;--color-success-transparent: rgba(16, 185, 129, .1);--color-success-border: rgba(16, 185, 129, .2);--color-danger: #ef4444;--color-danger-transparent: rgba(239, 68, 68, .1);--color-danger-border: rgba(239, 68, 68, .2);--color-surface: #1a1a1a;--color-border: rgba(255, 255, 255, .2);--color-text: #ffffff;--color-text-secondary: #a0a0a0;--gradient-nav: linear-gradient(145deg, var(--color-nav-bg), var(--color-nav-surface));--gradient-content: linear-gradient(145deg, var(--color-content-surface), var(--color-content-bg));--gradient-primary: linear-gradient(145deg, var(--color-primary), var(--color-primary-dark));--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .4);--shadow-primary: 0 4px 8px rgba(2, 205, 107, .25);--sl-tooltip-arrow-size: 0;--sl-tooltip-content: ""}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;background:var(--color-content-bg);color-scheme:dark}body{color:var(--color-content-text);overflow-x:hidden}#root{min-height:100%;display:flex;flex-direction:column}main{max-width:1200px;margin:2rem auto;padding:2rem;width:100%;flex:1;background:var(--gradient-content);border-radius:16px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--color-content-border)}.card{background:var(--gradient-content);border:1px solid var(--color-content-border);border-radius:16px;padding:1.5rem;transition:all .3s ease;box-shadow:var(--shadow-sm)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--color-content-hover)}.button{background:var(--gradient-primary);color:var(--color-dark);border:none;border-radius:12px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-sm)}.button:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);filter:brightness(1.1)}.button.secondary{background:transparent;border:2px solid var(--color-primary);color:var(--color-primary);box-shadow:none}.button.secondary:hover{background:#02cd6b1a;transform:translateY(-1px);box-shadow:var(--shadow-sm)}h1,h2,h3,h4,h5,h6{color:var(--color-text);font-weight:600;line-height:1.2}p{color:var(--color-text-secondary);line-height:1.6}a{color:var(--color-primary);text-decoration:none;transition:color .3s ease}a:hover{color:var(--color-primary-light)}input,textarea,select{background-color:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);border-radius:12px;padding:.75rem;transition:all .3s ease;box-shadow:inset 0 2px 4px #0003}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-transparent)}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--color-text-secondary)}input::placeholder,textarea::placeholder{color:var(--color-text-secondary)}table{width:100%;border-collapse:separate;border-spacing:0;margin:1rem 0}th,td{padding:1rem;border-bottom:1px solid var(--color-border);color:var(--color-text)}th{background:var(--color-surface);font-weight:600;text-align:left}tr:hover{background:var(--color-content-hover)}.theme-toggle,.logout-button{background:var(--color-content-surface);border:2px solid var(--color-content-border);color:var(--color-content-text);padding:.5rem;border-radius:6px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.theme-toggle{font-size:1.1rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.logout-button{padding:.5rem 1rem;font-size:.9rem;font-weight:500}.theme-toggle:hover,.logout-button:hover{background:var(--color-content-hover);transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--color-content-text-secondary)}
