.kraken-login-layout{display:flex;min-height:100vh;width:100vw;background-color:var(--bg-color);overflow:hidden}.kraken-login-hero{flex:1;background-color:var(--primary-color);position:relative;display:flex;flex-direction:column;padding:60px 80px;color:#fff;overflow:hidden;justify-content:center}.kraken-bg-graphic-1{position:absolute;top:-20%;right:-10%;width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,var(--primary-dark) 0%,rgba(113,50,245,0) 70%);opacity:.8;z-index:1}.kraken-bg-graphic-2{position:absolute;bottom:-30%;left:-20%;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,var(--primary-deep) 0%,rgba(91,30,207,0) 70%);opacity:.6;z-index:1}.kraken-hero-content{position:relative;z-index:2;max-width:600px}.kraken-logo-wrapper{display:flex;align-items:center;gap:16px;margin-bottom:64px}.kraken-logo-img{width:48px;height:48px;border-radius:12px;background:#fff;padding:6px}.kraken-logo-text{font-family:var(--font-brand);font-size:24px;font-weight:700;letter-spacing:-.5px}.kraken-hero-title{font-size:64px;font-weight:700;line-height:1.1;letter-spacing:-2px;margin-bottom:24px}.kraken-hero-subtitle{font-size:20px;line-height:1.5;color:#ffffffe6;margin-bottom:48px;max-width:500px}.kraken-hero-features{display:flex;flex-direction:column;gap:16px}.feature-item{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:500}.feature-item .material-symbols-outlined{background:#fff3;padding:8px;border-radius:8px;font-size:20px}.kraken-login-form-wrapper{flex:0 0 480px;background:var(--bg-color);display:flex;flex-direction:column;justify-content:center;padding:40px;position:relative;z-index:10;box-shadow:-10px 0 30px #0000000d}.kraken-login-form-inner{width:100%;max-width:360px;margin:0 auto}.kraken-form-header{margin-bottom:32px}.kraken-form-header h2{font-size:32px;font-weight:700;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.5px}.kraken-form-header p{color:var(--text-secondary);font-size:16px}.kraken-alert{display:flex;align-items:center;gap:12px;padding:16px;border-radius:8px;margin-bottom:24px;font-size:14px;font-weight:500}.kraken-alert-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.kraken-alert-error .material-symbols-outlined{color:#dc2626}.kraken-form{display:flex;flex-direction:column;gap:20px}.kraken-form-group{display:flex;flex-direction:column;gap:8px}.kraken-form-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.kraken-input{width:100%;padding:13px 16px;border:1px solid var(--border-gray);border-radius:8px;font-size:16px;background:var(--bg-color);color:var(--text-primary);font-family:var(--font-product);transition:all .2s ease}.kraken-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-subtle)}.kraken-input::placeholder{color:var(--border-gray)}.kraken-form-options{display:flex;justify-content:space-between;align-items:center;margin-top:-4px;margin-bottom:8px}.kraken-checkbox{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-primary);cursor:pointer}.kraken-link{color:var(--primary-color);text-decoration:none;font-size:14px;font-weight:600}.kraken-link:hover{color:var(--primary-dark);text-decoration:underline}.kraken-btn{padding:13px 16px;border:none;border-radius:var(--btn-radius);font-size:16px;font-weight:600;font-family:var(--font-product);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.kraken-btn-primary{background:var(--primary-color);color:#fff}.kraken-btn-primary:hover:not(:disabled){background:var(--primary-dark)}.kraken-btn-primary:disabled{opacity:.6;cursor:not-allowed}.kraken-btn-block{width:100%}.loading-spinner{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.kraken-form-footer{margin-top:32px;text-align:center;color:var(--text-secondary);font-size:14px}@media (max-width: 900px){.kraken-login-layout{flex-direction:column}.kraken-login-hero{padding:40px 24px;flex:none}.kraken-hero-title{font-size:40px;margin-bottom:16px}.kraken-hero-subtitle{font-size:16px;margin-bottom:24px}.kraken-logo-wrapper{margin-bottom:32px}.kraken-login-form-wrapper{flex:1;width:100%;padding:40px 24px;box-shadow:none}}.kraken-dashboard-layout{display:flex;min-height:100vh;width:100vw;background-color:#f7f7f9}.kraken-sidebar{width:280px;background-color:var(--bg-color);border-right:1px solid var(--border-gray);display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh}.kraken-sidebar-header{padding:24px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border-gray)}.kraken-sidebar-logo{width:36px;height:36px;border-radius:8px;border:1px solid var(--border-gray);padding:4px}.kraken-sidebar-brand h2{font-size:18px;font-weight:700;color:var(--text-primary);margin:0;line-height:1.2}.kraken-sidebar-brand span{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.kraken-sidebar-nav{flex:1;padding:24px 16px;display:flex;flex-direction:column;gap:32px;overflow-y:auto}.kraken-nav-group{display:flex;flex-direction:column;gap:4px}.kraken-nav-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:600;padding:0 12px;margin-bottom:8px}.kraken-nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;color:var(--text-primary);text-decoration:none;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease}.kraken-nav-item .material-symbols-outlined{font-size:20px;color:var(--text-secondary);transition:color .2s ease}.kraken-nav-item:hover{background-color:var(--neutral-cool-bg)}.kraken-nav-item.active{background-color:var(--primary-subtle);color:var(--primary-color);font-weight:600}.kraken-nav-item.active .material-symbols-outlined{color:var(--primary-color)}.kraken-sidebar-footer{padding:20px 24px;border-top:1px solid var(--border-gray);display:flex;align-items:center;justify-content:space-between}.kraken-user-profile{display:flex;align-items:center;gap:12px}.kraken-avatar{width:36px;height:36px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.kraken-user-info{display:flex;flex-direction:column}.kraken-user-name{font-size:14px;font-weight:600;color:var(--text-primary)}.kraken-user-role{font-size:12px;color:var(--text-secondary)}.kraken-logout-icon{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.kraken-logout-icon:hover{background-color:#fef2f2;color:#dc2626}.kraken-main-content{flex:1;display:flex;flex-direction:column;overflow-y:auto}.kraken-main-header{padding:40px 48px;display:flex;justify-content:space-between;align-items:flex-end;background-color:var(--bg-color);border-bottom:1px solid var(--border-gray)}.kraken-header-title h1{font-size:32px;margin-bottom:8px}.kraken-header-title p{color:var(--text-secondary);font-size:16px}.kraken-header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.kraken-status-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background-color:var(--accent-success-bg);color:var(--accent-success-text);border-radius:8px;font-size:13px;font-weight:600}.kraken-dot{width:8px;height:8px;border-radius:50%}.kraken-dot.success{background-color:var(--accent-success)}.kraken-timestamp{font-size:13px;color:var(--text-secondary);font-family:monospace}.kraken-dashboard-grid{padding:48px;display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:1400px}.kraken-action-card{background-color:var(--bg-color);border:1px solid var(--border-gray);border-radius:var(--card-radius);padding:32px;display:flex;align-items:flex-start;gap:24px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-micro);position:relative;overflow:hidden}.kraken-action-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-subtle);border-color:var(--primary-color)}.kraken-action-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kraken-action-icon .material-symbols-outlined{font-size:28px}.primary-action .kraken-action-icon{background-color:var(--primary-subtle);color:var(--primary-color)}.secondary-action .kraken-action-icon{background-color:var(--neutral-cool-bg);color:var(--text-primary)}.kraken-action-text h3{font-size:20px;margin-bottom:8px}.kraken-action-text p{color:var(--text-secondary);line-height:1.5;font-size:15px}.kraken-arrow{position:absolute;top:32px;right:32px;color:var(--border-gray);transition:all .2s ease}.kraken-action-card:hover .kraken-arrow{color:var(--primary-color);transform:translate(4px)}.kraken-stats-container{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:24px}.kraken-stat-box{background-color:var(--bg-color);border:1px solid var(--border-gray);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:8px}.kraken-stat-label{font-size:13px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.kraken-stat-value{font-size:32px;font-weight:700;color:var(--text-primary);font-family:var(--font-brand)}.kraken-stat-value.success{color:var(--accent-success)}@media (max-width: 1024px){.kraken-dashboard-grid{grid-template-columns:1fr}.kraken-stats-container{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.kraken-dashboard-layout{flex-direction:column}.kraken-sidebar{width:100%;height:auto;position:relative;border-right:none;border-bottom:1px solid var(--border-gray)}.kraken-sidebar-nav{display:none}.kraken-main-header{flex-direction:column;align-items:flex-start;gap:24px;padding:24px}.kraken-dashboard-grid{padding:24px}.kraken-stats-container{grid-template-columns:1fr}}.common-footer{background:var(--bg-color);border-top:1px solid var(--border-gray);padding:32px;margin-top:auto}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:16px}.footer-logos{display:flex;gap:32px;align-items:center;margin-bottom:8px}.footer-logo{height:36px;width:auto;object-fit:contain;transition:opacity .2s}.footer-logo:hover{opacity:.8}.copyright{font-size:14px;color:var(--text-secondary);margin:0}.copyright a{color:var(--neutral-cool);text-decoration:none}.copyright a:hover{color:var(--text-primary)}.credits{font-size:14px;color:var(--text-secondary);margin:0;display:flex;align-items:center;gap:8px}.credits a{color:var(--primary-color);text-decoration:none;font-weight:500}.credits a:hover{color:var(--primary-dark);text-decoration:underline}.separator{color:var(--border-gray)}.view-container{min-height:100vh;display:flex;flex-direction:column;background:#f7f7f9}.header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:var(--bg-color);border-bottom:1px solid var(--border-gray);box-shadow:var(--shadow-micro)}.header-left{display:flex;align-items:center;gap:1rem}.header-right{display:flex;gap:1rem}.header h1{font-size:1.5rem;border-color:var(--primary-color);background:var(--bg-color)}.icon-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:12px;font-weight:500;cursor:pointer;transition:all .3s ease;font-size:.9rem}.back-btn{background:var(--neutral-cool-bg);color:var(--text-primary);border:1px solid var(--border-gray)}.back-btn:hover{background:var(--border-gray)}.logout-btn{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff;border:none}.logout-btn:hover{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--primary-color) 100%);transform:translateY(-2px);box-shadow:0 8px 20px #6a5acd4d}.status-bar{padding:1rem 2rem;background:var(--bg-color);border-bottom:1px solid var(--border-gray);box-shadow:var(--shadow-micro)}.status-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.status-indicator{display:flex;align-items:center;gap:.5rem;font-weight:500;padding:.5rem 1rem;border-radius:8px;background:var(--bg-color);color:var(--text-primary);border:1px solid var(--border-gray)}.status-indicator.connected{background:#e8f5e9;color:#2e7d32;border-color:#81c784}.status-indicator.disconnected{background:#ffebee;color:#c62828;border-color:#ef5350}.quality-selector{display:flex;align-items:center;gap:.5rem;color:#424242}.network-info{display:flex;align-items:center;gap:.5rem;color:#424242;font-size:.9rem}.network-stats{margin-left:.5rem;color:#616161;font-size:.75rem;display:flex;align-items:center}.network-stats small{background:#2196f30f;padding:4px 8px;border-radius:6px;border:1px solid rgba(33,150,243,.08)}.network-status{font-weight:500}.quality-dropdown{background:#fff;color:#424242;border:2px solid #bbdefb;border-radius:8px;padding:.5rem 1rem;font-size:.9rem;cursor:pointer;transition:all .3s ease}.quality-dropdown:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f333}.video-section{flex:1;display:flex;justify-content:center;align-items:center;padding:2rem;position:relative}.video-wrapper{position:relative;width:100%;max-width:1920px;display:flex;justify-content:center;align-items:center}.video{width:100%;height:auto;background:#101114;border-radius:var(--card-radius);box-shadow:var(--shadow-subtle);transition:all .3s ease;border:1px solid var(--border-gray)}.video-controls{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;width:90%;max-width:800px;background:var(--bg-color);border-radius:var(--card-radius);padding:16px;transition:all .3s ease;border:1px solid var(--border-gray);box-shadow:var(--shadow-subtle);z-index:200}.video-controls.hidden{opacity:0;transform:translate(-50%) translateY(20px)}.controls-center{justify-content:center;gap:.5rem;flex-wrap:wrap;max-width:100%;overflow-x:auto}.control-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;background:#fff;color:#424242;border:2px solid #bbdefb;border-radius:8px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .3s ease;white-space:nowrap;flex-shrink:0}.control-btn .material-symbols-outlined{font-size:1.1rem}.control-btn:hover:not(:disabled){background:var(--neutral-cool-bg);border-color:var(--border-gray);color:var(--text-primary);transform:translateY(-2px);box-shadow:0 4px 12px #2196f333}.control-btn:disabled{opacity:.5;cursor:not-allowed}.control-btn.recording{background:#ffebee;color:#c62828;border-color:#ef5350;animation:pulse 2s infinite}.recording-indicator{display:flex;align-items:center;gap:.5rem;color:#c62828;font-weight:600;font-size:.9rem}.recording-icon{animation:pulse 1.5s infinite}.recording-text{font-weight:700;letter-spacing:1px}.site-logo{width:56px;height:56px;object-fit:contain;background:#fff;padding:6px;border-radius:8px;border:2px solid #e3f2fd}.footer-credit{padding:1.5rem;text-align:center;color:#616161;background:var(--bg-color);border-top:1px solid var(--border-gray)}.footer-logos{display:flex;justify-content:center;align-items:center;gap:2rem;margin-bottom:1rem}.footer-logo{height:50px;width:auto;object-fit:contain;transition:transform .3s ease}.footer-logo:hover{transform:scale(1.1)}.footer-credit a{color:#ff6f00;text-decoration:none;transition:color .3s ease;font-weight:500}.footer-credit a:hover{color:#f57c00}@media (max-width: 1024px){.header{padding:1rem 1.5rem}.header h1{font-size:1.25rem}.icon-btn{padding:.6rem 1rem;font-size:.85rem}.status-bar{padding:.75rem 1.5rem}.video-controls{width:95%;padding:.75rem 1rem}.control-btn{padding:.6rem 1rem;font-size:.8rem}.control-btn .material-symbols-outlined{font-size:1.1rem}}@media (max-width: 768px){.header{flex-direction:column;gap:.75rem;padding:.75rem 1rem}.header-left{width:100%;justify-content:center}.header h1{font-size:1.1rem}.header-right{width:100%;justify-content:space-between}.icon-btn{padding:.5rem .75rem;font-size:.8rem;flex:1;justify-content:center}.status-bar{padding:.5rem 1rem}.status-content{flex-direction:column;align-items:stretch;gap:.5rem}.status-content .ai-status-badge,.status-content .depth-status-badge,.status-content .camera-info-badge,.status-content .frame-size-badge{justify-content:center;font-size:.75rem;padding:.4rem .6rem}.video-section{padding:.5rem}.video-controls{flex-direction:column;gap:.75rem;width:100%;padding:.75rem;border-radius:12px}.controls-left,.controls-center,.controls-right{justify-content:center;width:100%}.controls-center{flex-wrap:wrap;gap:.5rem}.control-btn{flex:1 1 calc(33% - .5rem);min-width:80px;padding:.6rem .5rem;font-size:.75rem;justify-content:center}.control-btn .material-symbols-outlined{font-size:1rem}.control-btn span:not(.material-symbols-outlined){display:none}.footer-logos{gap:.75rem;flex-wrap:wrap;justify-content:center}.footer-logo{height:35px}.developer-credit{font-size:.7rem;padding:.5rem}}@media (max-width: 480px){.header{padding:.5rem .75rem;gap:.5rem}.header h1{font-size:1rem}.icon-btn{padding:.4rem .6rem;font-size:.75rem;border-radius:8px}.icon-btn span:not(.material-symbols-outlined){display:none}.status-bar{padding:.4rem .75rem}.video-wrapper{border-radius:8px;border-width:2px}.video-controls{padding:.5rem;border-radius:10px}.controls-center{gap:.375rem}.control-btn{flex:1 1 calc(25% - .375rem);min-width:60px;padding:.5rem .4rem;border-radius:8px}.control-btn .material-symbols-outlined{font-size:1.1rem}.footer-logo{height:28px}}@media (max-width: 768px) and (orientation: landscape){.header{flex-direction:row;padding:.5rem 1rem}.header-left,.header-right{width:auto}.status-bar{padding:.4rem 1rem}.video-section{padding:.25rem}.video-controls{flex-direction:row;flex-wrap:wrap;gap:.5rem;padding:.5rem}.controls-left,.controls-center,.controls-right{flex:0 0 auto}}.video-section:fullscreen{background:#000;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;padding:0}.video-section:fullscreen .video-wrapper{width:100%;height:100%;max-width:100%;display:flex;justify-content:center;align-items:center}.video-section:fullscreen .video{width:100%!important;height:100%!important;max-width:100vw;max-height:100vh;object-fit:contain;border-radius:0;border:none}.video-section:fullscreen .detection-canvas{width:100%!important;height:100%!important;max-width:100vw;max-height:100vh}.video-section:fullscreen .video-controls{bottom:30px;z-index:10}.video-section:-webkit-full-screen{background:#000;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;padding:0}.video-section:-webkit-full-screen .video-wrapper{width:100%;height:100%;max-width:100%;display:flex;justify-content:center;align-items:center}.video-section:-webkit-full-screen .video{width:100%!important;height:100%!important;max-width:100vw;max-height:100vh;object-fit:contain;border-radius:0;border:none}.video-section:-webkit-full-screen .detection-canvas{width:100%!important;height:100%!important;max-width:100vw;max-height:100vh}.video-section:-webkit-full-screen .video-controls{bottom:30px;z-index:10}.video-section:-moz-full-screen{background:#000;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;padding:0}.video-section:-moz-full-screen .video-wrapper{width:100%;height:100%;max-width:100%}.video-section:-moz-full-screen .video{width:100%!important;height:100%!important;max-width:100vw;max-height:100vh;object-fit:contain;border-radius:0;border:none}.video-section:-moz-full-screen .detection-canvas{width:100%!important;height:100%!important;max-width:100vw;max-height:100vh}.video-section:-ms-fullscreen{background:#000;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;padding:0}.video-section:-ms-fullscreen .video-wrapper{width:100%;height:100%;max-width:100%}.video-section:-ms-fullscreen .video{width:100%!important;height:100%!important;max-width:100vw;max-height:100vh;object-fit:contain;border-radius:0;border:none}.video-section:-ms-fullscreen .detection-canvas{width:100%!important;height:100%!important;max-width:100vw;max-height:100vh}.detection-panel{background:var(--card-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--card-border);padding:1rem 2rem;box-shadow:0 4px 12px #2196f31a}.detection-panel-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#1976d2}.detection-panel-header h3{margin:0;font-size:1.1rem;font-weight:600}.detection-panel-header .material-symbols-outlined{font-size:1.5rem}.detection-counts{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.count-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-radius:12px;min-width:140px;transition:all .3s ease;border:2px solid transparent}.count-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.count-card .material-symbols-outlined{font-size:1.75rem}.count-info{display:flex;flex-direction:column}.count-label{font-size:.75rem;font-weight:500;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.count-value{font-size:1.5rem;font-weight:700}.count-card.humans{background:linear-gradient(135deg,#ffebee,#ffcdd2);color:#c62828;border-color:#ef5350}.count-card.animals{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32;border-color:#66bb6a}.count-card.vehicles{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0;border-color:#42a5f5}.count-card.objects{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e65100;border-color:#ffa726}.count-card.total{background:linear-gradient(135deg,#ede7f6,#d1c4e9);color:#5e35b1;border-color:#7e57c2}.confidence-slider{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#fff;border-radius:8px;border:1px solid #e0e0e0;margin-bottom:1rem}.confidence-slider label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#424242;min-width:160px}.confidence-slider input[type=range]{flex:1;height:6px;border-radius:3px;background:linear-gradient(to right,#ff5252,#ffeb3b,#4caf50);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.confidence-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#1976d2;border:3px solid #fff;box-shadow:0 2px 6px #0000004d;cursor:pointer;transition:transform .2s ease}.confidence-slider input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}.distance-panel{background:linear-gradient(135deg,#e0f7fa,#b2ebf2);border-radius:12px;padding:1rem;margin-bottom:1rem;border:2px solid #00bcd4}.distance-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:#00838f}.distance-header h4{margin:0;font-size:.9rem;font-weight:600}.distance-list{display:flex;flex-wrap:wrap;gap:.5rem}.distance-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#fff;border-radius:8px;min-width:150px;font-size:.85rem;border-left:4px solid}.distance-item.humans{border-color:#c62828}.distance-item.animals{border-color:#2e7d32}.distance-item.vehicles{border-color:#1565c0}.distance-item.objects{border-color:#e65100}.distance-item .obj-name{font-weight:500;color:#333}.distance-item .obj-distance{font-weight:700;color:#00838f}.distance-item .obj-distance small{font-weight:400;font-size:.7rem;color:#757575;margin-left:4px}.detection-list{background:#fff;border-radius:12px;padding:1rem;border:1px solid #e0e0e0}.detection-list-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:#424242}.detection-list-header h4{margin:0;font-size:.9rem;font-weight:600}.detection-items{display:flex;flex-wrap:wrap;gap:.5rem}.detection-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.4rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500}.detection-item.humans{background:#ffebee;color:#c62828}.detection-item.animals{background:#e8f5e9;color:#2e7d32}.detection-item.vehicles{background:#e3f2fd;color:#1565c0}.detection-item.objects{background:#fff3e0;color:#e65100}.detection-item .det-class{text-transform:capitalize}.detection-item .det-score{background:#0000001a;padding:.15rem .5rem;border-radius:10px;font-size:.7rem}.ai-status-badge,.depth-status-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-weight:500;font-size:.85rem;transition:all .3s ease}.ai-status-badge{background:#f3e5f5;color:#7b1fa2;border:2px solid #ce93d8}.ai-status-badge.active{background:linear-gradient(135deg,#7b1fa2,#9c27b0);color:#fff;animation:ai-pulse 2s infinite}.depth-status-badge{background:#e0f7fa;color:#00838f;border:2px solid #4dd0e1}.depth-status-badge.active{background:linear-gradient(135deg,#00838f,#00acc1);color:#fff;animation:depth-pulse 2s infinite}@keyframes ai-pulse{0%,to{box-shadow:0 0 #9c27b066}50%{box-shadow:0 0 0 8px #9c27b000}}@keyframes depth-pulse{0%,to{box-shadow:0 0 #00bcd466}50%{box-shadow:0 0 0 8px #00bcd400}}.control-btn.ai-btn{background:linear-gradient(135deg,#f3e5f5,#e1bee7);border-color:#ce93d8;color:#7b1fa2}.control-btn.ai-btn:hover:not(:disabled){background:linear-gradient(135deg,#e1bee7,#ce93d8);border-color:#9c27b0}.control-btn.ai-btn.active{background:linear-gradient(135deg,#7b1fa2,#9c27b0);color:#fff;border-color:#7b1fa2}.control-btn.ai-btn.loading{animation:loading-pulse 1.5s infinite}@keyframes loading-pulse{0%,to{opacity:1}50%{opacity:.5}}.control-btn.depth-btn{background:linear-gradient(135deg,#e0f7fa,#b2ebf2);border-color:#4dd0e1;color:#00838f}.control-btn.depth-btn:hover:not(:disabled){background:linear-gradient(135deg,#b2ebf2,#80deea);border-color:#00bcd4}.control-btn.depth-btn.active{background:linear-gradient(135deg,#00838f,#00acc1);color:#fff;border-color:#00838f}.ai-indicator{display:flex;align-items:center;gap:.5rem;color:#9c27b0;font-weight:600;font-size:.9rem}.ai-icon{animation:ai-spin 2s linear infinite}@keyframes ai-spin{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}.ai-text{font-weight:700;letter-spacing:.5px}.detection-canvas,.depth-canvas{border-radius:12px}.stream-type-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32;border-radius:8px;font-weight:500;font-size:.85rem;border:2px solid #81c784}.video-wrapper{position:relative;width:100%;max-width:1280px;display:flex;justify-content:center;align-items:center}@media (max-width: 1024px){.detection-counts{justify-content:center}.count-card{min-width:120px;padding:.6rem 1rem}.count-value{font-size:1.25rem}}@media (max-width: 768px){.detection-panel{padding:1rem}.detection-counts{gap:.5rem}.count-card{min-width:100px;flex:1 1 calc(50% - .5rem)}.distance-panel,.detection-list{padding:.75rem}.control-btn.ai-btn,.control-btn.depth-btn{padding:.6rem .8rem;font-size:.8rem}}@media (max-width: 480px){.count-card{flex:1 1 100%}.detection-panel-header h3{font-size:.95rem}.ai-status-badge,.depth-status-badge{padding:.4rem .75rem;font-size:.75rem}}.camera-info-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32;border:2px solid #66bb6a;font-weight:500;font-size:.85rem;transition:all .3s ease}.camera-info-badge .material-symbols-outlined{font-size:1.2rem}.camera-info-badge.native{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e65100;border-color:#ffa726}.camera-info-badge:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2e7d3233}.camera-info-badge.native:hover{box-shadow:0 4px 12px #e6510033}.stream-type-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0;border:2px solid #42a5f5;font-weight:500;font-size:.85rem}.stream-type-badge .material-symbols-outlined{font-size:1.2rem}.responsive-video{width:100%;height:auto;max-width:100%;aspect-ratio:16 / 9;object-fit:contain;background:#000;border-radius:12px;box-shadow:0 8px 24px #2196f333;border:3px solid #e3f2fd}.frame-size-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;background:linear-gradient(135deg,#e8eaf6,#c5cae9);color:#3949ab;border:2px solid #7986cb;font-weight:500;font-size:.85rem;transition:all .3s ease}.frame-size-badge .material-symbols-outlined{font-size:1.2rem}.frame-size-badge:hover{transform:translateY(-2px);box-shadow:0 4px 12px #3949ab33}@media (max-width: 1400px){.video-wrapper{max-width:100%}}@media (max-width: 768px){.responsive-video{border-radius:8px;border-width:2px}.camera-info-badge,.frame-size-badge,.stream-type-badge{padding:.4rem .75rem;font-size:.75rem}.status-content{gap:.5rem}}@media (max-width: 480px){.camera-info-badge,.frame-size-badge{display:none}.status-bar{padding:.75rem 1rem}}.main-content-area{display:flex;flex:1;gap:1rem;padding:1rem;max-width:100%;overflow:hidden}.main-content-area .video-section{flex:1;min-width:0}.main-content-area.with-sidebar .video-section{flex:3}.stats-sidebar{flex:1;min-width:280px;max-width:320px;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;max-height:calc(100vh - 200px)}.sidebar-section{background:#fff;border-radius:12px;border:2px solid #e3f2fd;padding:1rem;box-shadow:0 2px 8px #2196f31a}.sidebar-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;color:#1565c0}.sidebar-header h4{margin:0;font-size:.9rem;font-weight:600}.sidebar-header .material-symbols-outlined{font-size:1.2rem}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.stat-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:8px;background:#f5f5f5}.stat-item .material-symbols-outlined{font-size:1.25rem}.stat-item.humans{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0}.stat-item.animals{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32}.stat-item.vehicles{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e65100}.stat-item.objects{background:linear-gradient(135deg,#f3e5f5,#e1bee7);color:#7b1fa2}.stat-data{display:flex;flex-direction:column}.stat-value{font-size:1.25rem;font-weight:700;line-height:1}.stat-label{font-size:.7rem;opacity:.8}.total-count{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem;background:linear-gradient(135deg,#e8eaf6,#c5cae9);border-radius:8px;color:#3949ab;font-weight:500}.total-count .material-symbols-outlined{font-size:1.2rem}.distance-list-sidebar{display:flex;flex-direction:column;gap:.375rem}.distance-item-sidebar{display:flex;justify-content:space-between;align-items:center;padding:.375rem .5rem;border-radius:6px;font-size:.8rem;background:#f5f5f5}.distance-item-sidebar.humans{background:#e3f2fd}.distance-item-sidebar.animals{background:#e8f5e9}.distance-item-sidebar.vehicles{background:#fff3e0}.distance-item-sidebar .obj-distance{font-weight:600;color:#1565c0}.objects-list-sidebar{display:flex;flex-direction:column;gap:.25rem}.object-item{display:flex;justify-content:space-between;align-items:center;padding:.375rem .5rem;border-radius:6px;font-size:.8rem;background:#f5f5f5}.object-item.humans{background:#e3f2fd;color:#1565c0}.object-item.animals{background:#e8f5e9;color:#2e7d32}.object-item.vehicles{background:#fff3e0;color:#e65100}.object-item.objects{background:#f3e5f5;color:#7b1fa2}.obj-score{font-weight:600;font-size:.75rem}.confidence-control{display:flex;flex-direction:column;gap:.5rem}.confidence-control label{font-size:.85rem;color:#424242}.confidence-control input[type=range]{width:100%;height:6px;border-radius:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(135deg,#bbdefb,#1565c0)}.confidence-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#1565c0;cursor:pointer;box-shadow:0 2px 6px #1565c066}@media (max-width: 1024px){.main-content-area{flex-direction:column}.stats-sidebar{max-width:100%;max-height:none;flex-direction:row;flex-wrap:wrap}.sidebar-section{flex:1 1 300px}}@media (max-width: 768px){.stats-sidebar{display:none}.main-content-area{padding:.5rem}}.gesture-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}.control-btn.gesture-btn{transition:all .3s ease}.control-btn.gesture-btn.active{background:#ffab0040;border-color:#ffab00;color:#ffab00;box-shadow:0 0 12px #ffab004d}.control-btn.gesture-btn.loading{opacity:.7;pointer-events:none}.control-btn.gesture-btn.loading .material-symbols-outlined{animation:spin-gesture 1s linear infinite}@keyframes spin-gesture{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gesture-status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:600;background:#ffab001a;border:1px solid rgba(255,171,0,.3);color:#ffab00;transition:all .3s ease}.gesture-status-badge .material-symbols-outlined{font-size:16px}.gesture-status-badge.fist{background:#ff6b6b26;border-color:#ff6b6b66;color:#ff6b6b}.gesture-status-badge.countdown-active{animation:pulse-badge .8s ease-in-out infinite alternate}@keyframes pulse-badge{0%{box-shadow:0 0 4px #ff6b6b4d}to{box-shadow:0 0 14px #ff6b6b99}}.gesture-indicator{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#ffab0026;border-radius:12px;font-size:12px;font-weight:600;color:#ffab00}.gesture-indicator .gesture-icon{font-size:16px}.gesture-indicator.fist-detected{background:#ff6b6b26;color:#ff6b6b}.share-container{min-height:100vh;display:flex;flex-direction:column;background:#f7f7f9}.dashboard-nav{display:flex;justify-content:space-between;align-items:center;padding:16px 32px;background:var(--bg-color);border-bottom:1px solid var(--border-gray);box-shadow:var(--shadow-micro)}.nav-brand{display:flex;align-items:center;gap:1rem}.nav-logo{height:48px;width:auto;object-fit:contain}.nav-text h1{font-size:1.25rem;color:var(--primary-color);margin:0;font-weight:700;letter-spacing:-.01em}.nav-text p{font-size:.75rem;color:var(--secondary-color);margin:0;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.nav-actions{display:flex;align-items:center;gap:1rem}.icon-btn.back-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;background:var(--neutral-cool-bg);color:var(--text-primary);border:1px solid var(--border-cool);border-radius:var(--btn-radius);font-weight:600;cursor:pointer;transition:all .2s ease;font-size:14px}.icon-btn.back-btn:hover{background:var(--border-gray);transform:translateY(-2px)}.logout-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;background:var(--bg-color);color:var(--primary-color);border:1px solid var(--primary-dark);border-radius:var(--btn-radius);font-weight:600;cursor:pointer;transition:all .2s ease;font-size:14px}.logout-btn:hover{background:var(--primary-subtle);border-color:var(--primary-dark);color:var(--primary-color)}.status-bar{padding:1rem 2rem;background:var(--bg-color);border-bottom:1px solid var(--border-gray)}.status-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;max-width:1280px;margin:0 auto}.status-indicator{display:flex;align-items:center;gap:.5rem;font-weight:600;padding:.5rem 1rem;border-radius:50px;font-size:.9rem}.status-indicator.connected{background:var(--accent-success-bg);color:var(--accent-success-text);border:1px solid transparent}.status-indicator.streaming{background:var(--primary-subtle);color:var(--primary-color);border:1px solid transparent}.status-indicator.disconnected{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.quality-selector{display:flex;align-items:center;gap:.5rem;color:var(--text-primary)}.quality-dropdown{background:var(--bg-color);color:var(--text-primary);border:1px solid var(--border-gray);border-radius:8px;padding:8px 16px;font-size:14px;cursor:pointer;transition:all .2s ease}.quality-dropdown:focus{outline:none;border-color:var(--primary-color);background:var(--bg-color)}.share-content{flex:1;display:flex;flex-direction:column;align-items:center;padding:2rem;gap:2rem}.video-section{width:100%;max-width:1280px;display:flex;justify-content:center;align-items:center;position:relative}.video-wrapper{position:relative;width:100%;display:flex;justify-content:center;align-items:center;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #0000001a;background:#000}.video{width:100%;height:auto}.video-controls{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:space-between;width:90%;max-width:800px;background:var(--bg-color);border-radius:var(--card-radius);padding:16px 24px;transition:all .3s ease;border:1px solid var(--border-gray);box-shadow:var(--shadow-subtle);z-index:20}.video-controls.hidden{opacity:0;transform:translate(-50%) translateY(20px);pointer-events:none}.video-controls.visible{opacity:1;transform:translate(-50%) translateY(0)}.controls-left,.controls-center,.controls-right{display:flex;align-items:center;gap:.5rem}.controls-center{justify-content:center;gap:1rem}.control-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:var(--bg-color);color:var(--text-primary);border:1px solid var(--border-gray);border-radius:var(--btn-radius);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.control-btn:hover:not(:disabled){background:var(--neutral-cool-bg);transform:translateY(-2px)}.control-btn.recording{background:#ffebee;color:#d32f2f;border-color:#ffcdd2;animation:pulse 2s infinite}.recording-indicator{display:flex;align-items:center;gap:.5rem;color:#d32f2f;font-weight:700;font-size:.85rem;background:var(--bg-color);padding:.4rem .8rem;border-radius:50px}.recording-icon{font-size:.8rem;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.main-controls{display:flex;gap:1rem;justify-content:center}.main-control-btn{display:flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;font-size:1rem;font-weight:600;border:none;border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000026}.start-btn{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff}.start-btn:hover{transform:translateY(-4px);box-shadow:0 8px 24px #6a5acd4d}.stop-btn{background:linear-gradient(135deg,#d32f2f,#c62828);color:#fff}.stop-btn:hover{transform:translateY(-4px);box-shadow:0 8px 24px #d32f2f4d}.dashboard-footer{background:var(--bg-color);border-top:1px solid var(--border-gray);padding:2rem;margin-top:auto}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1rem}.footer-logos{display:flex;gap:2rem;align-items:center;margin-bottom:.5rem}.footer-logo{height:32px;width:auto;object-fit:contain;opacity:.8;transition:opacity .2s}.footer-logo:hover{opacity:1}.copyright{font-size:.85rem;color:#94a3b8;margin:0}.credits{font-size:.8rem;color:#64748b;margin:0}.credits a{color:var(--secondary-color);text-decoration:none;font-weight:500}.credits a:hover{text-decoration:underline}@media (max-width: 768px){.dashboard-nav{padding:1rem;flex-direction:column;gap:1rem;align-items:stretch}.nav-brand{justify-content:center}.nav-actions{justify-content:space-between}.status-content{flex-direction:column;align-items:stretch}.share-content{padding:1rem}.video-controls{flex-direction:column;gap:1rem;width:95%;padding:1rem}.controls-center{flex-wrap:wrap}}.video-section:fullscreen{background:#000}.video-section:-webkit-full-screen{background:#000}.video-section:-moz-full-screen{background:#000}.video-section:-ms-fullscreen{background:#000}*{box-sizing:border-box;margin:0;padding:0}#root{width:100%;min-height:100vh}:root{--font-brand: "Kraken-Brand", "IBM Plex Sans", Helvetica, Arial, sans-serif;--font-product: "Kraken-Product", "IBM Plex Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--bg-color: #ffffff;--text-primary: #101114;--text-secondary: #9497a9;--primary-color: #7132f5;--primary-dark: #5741d8;--primary-deep: #5b1ecf;--primary-subtle: rgba(133, 91, 251, .16);--neutral-cool: #686b82;--neutral-cool-bg: rgba(148, 151, 169, .08);--border-gray: #dedee5;--border-cool: rgba(104, 107, 130, .24);--accent-success: #149e61;--accent-success-text: #026b3f;--accent-success-bg: rgba(20, 158, 97, .16);--btn-radius: 12px;--card-radius: 16px;--shadow-subtle: rgba(0, 0, 0, .03) 0px 4px 24px;--shadow-micro: rgba(16, 24, 40, .04) 0px 1px 4px}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:var(--font-product);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-color);color:var(--text-primary);overflow-x:hidden;font-size:16px;line-height:1.38}h1,h2,h3,.display-text{font-family:var(--font-brand);letter-spacing:-.5px}h1{font-size:48px;font-weight:700;line-height:1.17;letter-spacing:-1px}h2{font-size:36px;font-weight:700;line-height:1.22}h3{font-size:28px;font-weight:700;line-height:1.29}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
