:root{--primary-green: #00ff89;--primary-green-hover: #00e67a;--primary-green-light: #33ffa0;--primary-green-soft: rgba(0, 255, 137, .1);--dark-bg: #0a0b0f;--dark-surface: #1a1d24;--dark-surface-elevated: #22252d;--text-primary: #ffffff;--text-secondary: #b8bcc8;--text-muted: #8891a3;--border-subtle: rgba(255, 255, 255, .1);--gradient-hero: linear-gradient(135deg, #0a0b0f 0%, #1a1d24 100%);--gradient-card: linear-gradient(145deg, #1a1d24 0%, #22252d 100%);--shadow-soft: 0 4px 20px rgba(0, 0, 0, .3);--shadow-glow: 0 0 30px rgba(0, 255, 137, .15);--error-color: #ff4757;--danger-red: #ff4757;--danger-red-light: #ff6666;--danger-red-dark: #e53e3e;--danger-red-vivid: #ff4444;--danger-red-stop: #e63946;--success-color: #4caf50;--warning-color: #ffa726;--warning-yellow: #ffa726;--warning-yellow-soft: rgba(255, 167, 38, .1);--warning-amber: #ffaa00;--warning-orange: #ff9800;--warning-gold: #ffd700;--warning-caution: #ffc107;--info-color: #42a5f5;--info-blue: #00aaff;--preview-blue: #3742fa;--preview-blue-hover: #2f36d9;--tag-person-blue: #3b82f6;--tag-vehicle-amber: #f59e0b;--tag-animal-pink: #ec4899;--primary-green-dark: #00a86b;--primary-green-mid: #00c878;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-secondary: "Inter", sans-serif;--base-font-size: 16px;--line-height: 1.6;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-3xl: 24px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080}*{margin:0;padding:0;box-sizing:border-box}*:before,*:after{box-sizing:border-box}html{font-family:var(--font-primary);font-size:var(--base-font-size);line-height:var(--line-height);scroll-behavior:smooth;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;height:100%}body{background:var(--dark-bg);color:var(--text-primary);font-family:var(--font-primary);font-size:var(--base-font-size);line-height:var(--line-height);margin:0;padding:0;overflow-x:hidden;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;height:100%}h1,h2,h3,h4,h5,h6{font-family:var(--font-secondary);font-weight:600;line-height:1.3;margin:0;color:var(--text-primary)}h1{font-size:2.5rem;font-weight:700}h2{font-size:2rem;font-weight:600}h3{font-size:1.5rem;font-weight:600}h4{font-size:1.25rem;font-weight:600}h5{font-size:1.125rem;font-weight:600}h6{font-size:1rem;font-weight:600}p{margin:0;color:var(--text-secondary);line-height:var(--line-height)}a{color:var(--primary-green);text-decoration:none;transition:color var(--transition-normal)}a:hover{color:var(--primary-green-hover)}a:focus{outline:2px solid var(--primary-green);outline-offset:2px}ul,ol{margin:0;padding:0}li{color:var(--text-secondary)}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}input,select,textarea{background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);padding:var(--spacing-md);transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px var(--primary-green-soft)}input::placeholder,textarea::placeholder{color:var(--text-muted)}img,svg{max-width:100%;height:auto;display:block}video{max-width:100%;height:auto}table{width:100%;border-collapse:collapse;border-spacing:0}th,td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-subtle)}th{font-weight:600;color:var(--text-primary);background:var(--dark-surface)}td{color:var(--text-secondary)}code{background:var(--dark-surface-elevated);border-radius:var(--radius-sm);color:var(--primary-green);font-family:Menlo,Monaco,Courier New,monospace;font-size:.875em;padding:.125rem .25rem}pre{background:var(--dark-surface-elevated);border-radius:var(--radius-md);color:var(--text-primary);overflow-x:auto;padding:var(--spacing-md)}pre code{background:none;padding:0}blockquote{border-left:3px solid var(--primary-green);padding-left:var(--spacing-md);margin:var(--spacing-md) 0;font-style:italic;color:var(--text-secondary)}hr{border:none;height:1px;background:var(--border-subtle);margin:var(--spacing-xl) 0}::selection{background:var(--primary-green-soft);color:var(--primary-green)}::-moz-selection{background:var(--primary-green-soft);color:var(--primary-green)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--dark-surface)}::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}*:focus{outline:2px solid var(--primary-green);outline-offset:2px}button:focus,input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px var(--primary-green-soft)}.logo-accent,.logo-accent-white{color:var(--text-primary)}.btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all var(--transition-normal);text-decoration:none;display:inline-block;text-align:center;font-family:inherit;font-size:1rem;line-height:1}.btn-secondary:hover{background:var(--primary-green);color:var(--dark-bg);border-color:var(--primary-green)}.btn-full{width:100%}.card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:2rem;transition:all var(--transition-normal)}.card:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-weight:500}.form-input{width:100%;padding:.75rem 1rem;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:1rem;transition:all var(--transition-normal)}.form-input:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px var(--primary-green-soft)}.last-updated{color:var(--text-muted);font-size:.9rem;margin-bottom:2rem}.toc-card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:1.5rem;margin-bottom:3rem;transition:all var(--transition-normal)}.toc-card:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft)}.toc-card h3{color:var(--text-primary);font-weight:600;margin-bottom:1rem;font-size:1.1rem}.toc-list{list-style:none;margin:0;padding:0}.toc-list li{margin-bottom:.5rem}.toc-card a{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-normal);display:block;padding:.25rem 0}.toc-card a:hover{color:var(--primary-green)}.privacy-features{list-style:none;margin:0;padding:0}.privacy-features li{color:var(--text-secondary);margin-bottom:.75rem;padding-left:1.5rem;position:relative}.privacy-features li:before{content:"✓";color:var(--primary-green);font-weight:700;position:absolute;left:0}.support-categories{margin-top:1rem;text-align:center}.support-categories small{color:var(--text-muted);font-size:.875rem}@media print{*{background:#fff!important;color:#000!important;box-shadow:none!important}body{font-size:12pt;line-height:1.4}.btn{display:none}}.form-input,.form-select{width:100%;padding:.875rem 1rem;background:var(--dark-surface-elevated, #22252d);color:var(--text-primary, #ffffff);border:1px solid var(--border-subtle, rgba(255, 255, 255, .1));border-radius:var(--radius-md, 8px);font-size:1rem;font-family:inherit;transition:all .3s ease}.form-input:focus,.form-select:focus{outline:none;border-color:var(--primary-green, #00ff89);box-shadow:0 0 0 2px #00ff891a}.form-input::placeholder{color:var(--text-muted, #6c757d)}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.form-select option{background:var(--dark-surface, #1a1d24);color:var(--text-primary, #ffffff)}.visible{display:block!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-muted{color:var(--text-muted)!important}.text-green{color:var(--primary-green)}.text-danger{color:var(--error-color)!important}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mt-4{margin-top:var(--spacing-xl)}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.mb-4{margin-bottom:var(--spacing-xl)}.p-1{padding:var(--spacing-sm)}.p-2{padding:var(--spacing-md)}.p-3{padding:var(--spacing-lg)}.p-4{padding:var(--spacing-xl)}.flex-center{display:flex;justify-content:center;align-items:center}.flex-between{display:flex;justify-content:space-between;align-items:center}.gap-1{gap:var(--spacing-sm)}.gap-2{gap:var(--spacing-md)}.gap-3{gap:var(--spacing-lg)}.gap-4{gap:var(--spacing-xl)}.animate-fade-in{animation:fadeInUp .8s ease-out}.container{max-width:1200px;margin:0 auto;padding:0 1rem}#app-root{min-height:100vh;display:flex;flex-direction:column;justify-content:center;background:var(--dark-bg)}.content-container{max-width:800px;margin:0 auto;padding:0 1rem}.main-content{padding-top:6rem;padding-bottom:4rem;min-height:100vh}header{position:fixed;top:0;left:0;right:0;background:#0a0b0ff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-subtle);z-index:1000;padding:1rem 0;transition:all .3s ease}.header-content{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;text-decoration:none;font-size:1.8rem;font-weight:700;color:var(--primary-green);letter-spacing:1px}.logo-image{height:41px;width:auto;max-height:51px;object-fit:contain;transition:transform .3s ease}.logo-link{transition:opacity .2s ease;cursor:pointer;display:inline-block}.logo-image{transition:transform .2s ease}.logo-link:hover .logo-image{transform:scale(1.05)}.logo-link.active{opacity:1}.logo-link:not(.active){opacity:.8}.logo-link:not(.active):hover{opacity:1}@media (max-width: 768px){.logo-image{height:36px;max-height:41px}}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links a{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color .3s ease}.nav-links a:hover{color:var(--primary-green)}footer{background:var(--dark-bg);padding:3rem 0 2rem;border-top:1px solid var(--border-subtle);text-align:center}.footer-links{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.footer-links a{color:var(--text-secondary);text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:var(--primary-green)}.copyright{color:var(--text-muted);font-size:.9rem}.page-header{text-align:center;margin-bottom:3rem;padding:2rem 0}.page-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,var(--text-primary) 0%,var(--primary-green) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-header p{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.7}.section-header{text-align:center;margin-bottom:4rem}.section-header h2{font-size:2.5rem;font-weight:700;margin-bottom:1rem}.section-header p{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.content-section{margin-bottom:3rem;padding:2rem;background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:16px;transition:all .3s ease}.content-section:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft)}.content-section h2{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary-green);display:inline-block}.content-section p{color:var(--text-secondary);margin-bottom:1rem;line-height:1.7}.content-section ul{color:var(--text-secondary);margin-left:1.5rem;margin-bottom:1rem}.content-section li{margin-bottom:.5rem}.content-section a{color:var(--primary-green);text-decoration:none;transition:color .3s ease}.content-section a:hover{color:var(--primary-green-hover);text-decoration:underline}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.form-row{display:flex;gap:1rem}.error-container{max-width:480px;margin:120px auto 16px;padding:40px 28px 24px;border-radius:16px;background:var(--dark-surface-elevated);box-shadow:var(--shadow-soft);color:var(--text-primary);text-align:center;border:1.5px solid var(--border-subtle)}.error-container:hover{border-color:var(--primary-green);box-shadow:var(--shadow-glow)}.error-container{animation:fadeInUp .7s cubic-bezier(.23,1.01,.32,1) both}.error-container h1{color:var(--primary-green);font-size:2.7rem;font-weight:700;margin-bottom:1rem}.error-container h2{color:var(--text-secondary);font-size:1.2rem;margin-bottom:2rem}.error-container .btn{margin-top:2rem}.contact-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:3rem}.contact-method{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:2rem;text-align:center;transition:all var(--transition-normal)}.contact-method:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.contact-method-icon{font-size:2.5rem;margin-bottom:1rem;display:block}.contact-method h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:.5rem}.contact-method p{color:var(--text-secondary);margin-bottom:1rem;font-size:.9rem}.contact-method a{color:var(--primary-green);text-decoration:none;font-weight:500;transition:color var(--transition-normal)}.contact-method a:hover{color:var(--primary-green-hover)}.contact-form-container{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:2rem;margin-bottom:2rem;transition:all var(--transition-normal)}.contact-form-container:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft)}.form-header{text-align:center;margin-bottom:2rem}.form-header h2{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin-bottom:.5rem}.form-header p{color:var(--text-secondary);font-size:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:0}.form-row .form-textarea{width:100%;padding:.75rem 1rem;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:1rem;transition:all var(--transition-normal);resize:vertical;min-height:120px}.form-textarea:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px var(--primary-green-soft)}.form-textarea::placeholder{color:var(--text-muted)}.form-select{width:100%;padding:.75rem 1rem;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:1rem;transition:all var(--transition-normal);cursor:pointer}.form-select:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px var(--primary-green-soft)}.message{padding:1rem;border-radius:var(--radius-md);margin-top:1rem;display:none;font-weight:500}.message.success{background:#4caf501a;border:1px solid var(--success-color);color:var(--success-color)}.message.error{background:#ff47571a;border:1px solid var(--error-color);color:var(--error-color)}.message.visible{display:block}.field-error{display:block;color:var(--error-color);font-size:.8125rem;margin-top:.25rem;min-height:1.125rem}.input-error,.input-error:focus{border-color:var(--error-color);box-shadow:0 0 0 3px #ff475726}.response-info{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-subtle);text-align:center}.response-info h4{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin-bottom:1rem}.category-list{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;list-style:none;margin:0;padding:0}.category-tag{background:var(--primary-green-soft);color:var(--primary-green);padding:.5rem 1rem;border-radius:var(--radius-2xl);font-size:.875rem;font-weight:500;border:1px solid var(--primary-green)}.page-header{font-size:1.5rem;font-weight:600;color:var(--text-primary)}@media (max-width: 768px){.container{padding:0 .5rem}.header-content{flex-direction:column;gap:1rem}.nav-links{gap:1rem}.footer-links{flex-direction:column;gap:1rem}.form-row{flex-direction:column}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.category-list{flex-direction:column;align-items:center}.contact-methods{grid-template-columns:1fr}}@media (max-width: 480px){.page-header h1,.section-header h2{font-size:2rem}.content-section{padding:1.5rem}}.mobile-menu-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:1001}.mobile-menu-toggle span{display:block;width:24px;height:2px;background:var(--text-primary, #fff);border-radius:2px;transition:all .3s ease}.mobile-menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}@media (max-width: 768px){.mobile-menu-toggle{display:flex;order:3}header .header-content{position:relative}.header-content .nav-links{display:none}.header-content .nav-links.mobile-open{display:flex;flex-direction:column;position:absolute;top:100%;left:-1rem;right:-1rem;background:#0a0b0ffa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-subtle, rgba(255,255,255,.1));padding:.5rem 0;gap:0;z-index:1000}.header-content .nav-links.mobile-open li{list-style:none}.header-content .nav-links.mobile-open li a{display:block;padding:.75rem 1.5rem;color:var(--text-secondary, #b8bcc8);text-decoration:none;font-size:1rem;transition:all .2s ease}.header-content .nav-links.mobile-open li a:hover{color:var(--primary-green, #00ff89);background:#ffffff0d}}:root{--dashboard-header-height: 64px;--dashboard-sidebar-width: 240px;--dashboard-sidebar-collapsed-width: 64px;--z-base: 0;--z-content: 1;--z-video-overlay: 1;--z-timeline-marker: 2;--z-session-header: 3;--z-filter-badge: 4;--z-card-badge: 5;--z-card-actions: 10;--z-camera-indicator: 10;--z-modal-elements: 10;--z-floating-label: 15;--z-video-controls: 20;--z-card-menu: 30;--z-filter-dropdown: 40;--z-search-results: 50;--z-date-picker: 100;--z-sidebar-overlay: 998;--z-sidebar: 999;--z-gallery-dropdown: var(--z-dropdown);--z-status-container: var(--z-dropdown);--z-gallery-tooltip: var(--z-tooltip);--z-detection-tooltip: var(--z-tooltip);--z-dashboard-modal: var(--z-modal);--z-notification: 1100;--z-critical-modal: 10000;--z-emergency: 10001;--sidebar-transition: width .3s cubic-bezier(.4, 0, .2, 1);--view-transition: margin-left .3s cubic-bezier(.4, 0, .2, 1), width .3s cubic-bezier(.4, 0, .2, 1)}:root{--breakpoint-mobile: 768px;--breakpoint-tablet: 1200px;--breakpoint-desktop: 1920px;--breakpoint-4k: 2560px;--modal-sm: 500px;--modal-md: 800px;--modal-lg: 1200px;--modal-xl: 1400px;--timeline-card-min-width: 400px;--session-card-min-width: 320px;--sidebar-width-expanded: var(--dashboard-sidebar-width);--sidebar-width-collapsed: var(--dashboard-sidebar-collapsed-width)}.camera-view{--card-padding: var(--spacing-md);--view-padding-x: var(--spacing-2xl);--view-padding-y: var(--spacing-md);--view-padding-mobile: var(--spacing-md);--view-padding-large: var(--spacing-3xl);--view-padding-xlarge: calc(var(--spacing-3xl) * 1.5)}.dashboard-card{--card-border-hover: var(--primary-green);--card-shadow-hover: var(--shadow-soft)}.gallery-grid{--gallery-columns-mobile: 1;--gallery-columns-tablet: 3;--gallery-columns-desktop: 4;--gallery-columns-large: 5;--gallery-columns-xlarge: 6}.header-left{display:flex;align-items:center}.header-left .logo-link{text-decoration:none;color:var(--text-primary);font-size:1.5rem;font-weight:700;transition:color var(--transition-normal);display:flex;align-items:center}.header-left .logo-link:hover,.logo-accent{color:var(--primary-green)}.camera-view .logo-image,.app-header .logo-image{animation:none!important}.hamburger-menu{display:none;align-items:center;justify-content:center;background:none;border:none;padding:var(--spacing-sm);margin-right:var(--spacing-sm);cursor:pointer;color:var(--text-primary);border-radius:var(--radius-md);transition:all var(--transition-normal)}.hamburger-menu:hover{background:var(--dark-surface-elevated);color:var(--primary-green)}.user-menu{position:relative}.user-menu-trigger{background:none;border:none;padding:0;cursor:pointer}.user-avatar{width:40px;height:40px;border-radius:50%;background:var(--primary-green);display:flex;align-items:center;justify-content:center;color:var(--dark-bg);font-weight:600;font-size:1rem;transition:all var(--transition-normal)}.user-avatar:hover{transform:scale(1.05);box-shadow:var(--shadow-glow)}.user-menu-dropdown{position:absolute;top:calc(100% + var(--spacing-sm));right:0;width:240px;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:var(--spacing-md);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-normal);z-index:var(--z-dropdown)}.user-menu-dropdown.active{opacity:1;visibility:visible;transform:translateY(0)}.user-info{padding:var(--spacing-md) 0}.user-name{font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.user-email{color:var(--text-muted);font-size:.875rem}.menu-divider{margin:var(--spacing-md) 0;border:none;height:1px;background:var(--border-subtle)}.menu-item{display:block;width:100%;padding:var(--spacing-md);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-normal);background:none;border:none;text-align:left;cursor:pointer;font-family:inherit;font-size:inherit}.menu-item:hover{background:var(--dark-surface);color:var(--text-primary)}.sign-out-btn{color:var(--error-color)}.sign-out-btn:hover{background:#ef44441a}.loading-state{text-align:center;color:var(--text-muted);padding:var(--spacing-xl);font-style:italic}.empty-state{text-align:center;padding:var(--spacing-lg);color:var(--text-secondary)}.empty-state-icon{font-size:2.5rem;margin-bottom:var(--spacing-sm);opacity:.5}.empty-state-title{font-size:1.125rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--text-primary)}.empty-state-description{max-width:400px;margin:0 auto;font-size:.9rem}.error-state{background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.error-state-title{color:var(--error-color);font-weight:600;margin-bottom:var(--spacing-sm)}.error-state-message{color:var(--text-primary)}.app-view{background:var(--dark-bg);color:var(--text-primary)}.app-view h1,.app-view h2,.app-view h3{color:var(--primary-green)}.app-view p,.app-view .config-description{color:var(--text-secondary)}.app-view .form-input,.app-view .form-select{background:var(--dark-surface-elevated);color:var(--text-primary);border:1px solid var(--border-subtle)}.app-view .settings-section,.app-view .support-section{background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:2rem}@media (max-width: 768px){.user-menu-dropdown{right:-20px;width:200px}.user-avatar{width:36px;height:36px;font-size:.9rem}}@media print{.user-menu-dropdown{display:none!important}}.camera-view{height:100vh;overflow:hidden}.camera-view header.app-header{position:fixed;top:0;left:0;right:0;height:64px;background:var(--dark-surface);border-bottom:1px solid var(--border-subtle);z-index:var(--z-fixed);padding:0}.camera-view header.app-header .header-content{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 var(--spacing-lg);width:100%;max-width:none;margin:0}.camera-view .main-content{display:flex;height:100vh;padding:64px 0 0;min-height:unset;overflow:hidden;background:var(--dark-bg)}.sidebar{position:fixed;left:0;top:64px;width:180px;height:calc(100vh - 64px);background:var(--dark-surface);border-right:1px solid var(--border-subtle);padding:0;overflow-y:auto;overflow-x:hidden;z-index:var(--z-sticky);transition:width .3s cubic-bezier(.4,0,.2,1)}.nav-links{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:0 var(--spacing-md)}.nav-link{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-normal);font-weight:500;position:relative;font-size:.9rem}.nav-link:hover{background:var(--dark-surface-elevated);color:var(--text-primary)}.nav-link.active{background:var(--primary-green-soft);color:var(--primary-green);border-left:3px solid var(--primary-green)}.sidebar-toggle{background:none;border:none;width:100%;padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;color:var(--text-secondary);border-radius:0;transition:all var(--transition-normal);display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-md);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--border-subtle);font-size:.9rem}.sidebar-toggle:hover{background:var(--dark-surface-elevated);color:var(--text-primary)}.toggle-icon{width:24px;height:24px;flex-shrink:0;display:inline-block}.sidebar.collapsed{width:80px;min-width:80px;max-width:80px;padding:0 var(--spacing-sm)}.sidebar.collapsed .sidebar-toggle,nav.sidebar.collapsed .sidebar-toggle{padding:var(--spacing-md);justify-content:center}.sidebar.collapsed .sidebar-toggle .toggle-icon,nav.sidebar.collapsed .sidebar-toggle .toggle-icon{transform:rotate(180deg)}.sidebar.collapsed::-webkit-scrollbar{display:none}.sidebar.collapsed .nav-links{padding:0 var(--spacing-xs)}.sidebar.collapsed .nav-link{padding:var(--spacing-md);justify-content:center;position:relative}.sidebar.collapsed .nav-text{display:none}.nav-icon{width:20px;height:20px;flex-shrink:0;display:inline-block;pointer-events:none}.nav-link *{pointer-events:none}.sidebar.collapsed .nav-icon{margin:0}.sidebar.collapsed .nav-link:after{content:attr(title);position:absolute;left:100%;top:50%;transform:translateY(-50%);background:var(--dark-surface-elevated);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);white-space:nowrap;margin-left:var(--spacing-xs);pointer-events:none;opacity:0;transition:opacity .2s ease;z-index:var(--z-tooltip);box-shadow:var(--shadow-lg)}.sidebar.collapsed .nav-link:hover:after{opacity:1}.sidebar.collapsed .nav-link.active:before{left:0;width:3px}.view-container{margin-left:180px;width:calc(100% - 180px);max-width:100%;flex:1;display:flex;flex-direction:column;overflow:hidden;padding:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1),width .3s cubic-bezier(.4,0,.2,1);container-type:inline-size;container-name:dashboard-view}.sidebar.collapsed~.view-container{margin-left:80px;width:calc(100% - 80px);max-width:calc(100% - 80px)}.sidebar.transitioning~.view-container .gallery-grid{pointer-events:none;opacity:.95;transition:none!important}.view-container>*{flex-shrink:0}.app-view{display:none;flex:1 1 auto;overflow-y:hidden;overflow-x:hidden;min-height:0;animation:fadeInUp .3s ease-out;padding:var(--spacing-sm) var(--spacing-xl)}.app-view.active{display:flex;flex-direction:column}.app-view:last-child{padding-bottom:var(--spacing-sm)}#gallery-view{overflow:hidden;padding:0}#gallery-view.active{display:flex;flex-direction:column;overflow:hidden;flex:1}.view-header{flex-shrink:0;margin-bottom:.25rem}#gallery-view .view-header{padding:var(--spacing-sm) var(--spacing-xl) 0}.view-header h1{color:var(--text-primary);margin-bottom:.25rem;font-size:1.5rem}.view-description{color:var(--text-secondary);font-size:.875rem}#account-view .view-header{margin-bottom:var(--spacing-sm)}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl)}.hamburger-menu{display:none;background:none;border:none;padding:var(--spacing-sm);cursor:pointer;color:var(--text-primary);margin-right:var(--spacing-sm)}.hamburger-menu svg{width:24px;height:24px}.hamburger-menu:hover{color:var(--primary-green)}@media (max-width: 768px){.hamburger-menu{display:flex;align-items:center;justify-content:center}.sidebar{position:fixed;left:-180px;width:180px;z-index:var(--z-sidebar);height:100vh;transition:left .3s cubic-bezier(.4,0,.2,1)}.sidebar.mobile-open{left:0}.sidebar.collapsed{left:-80px;width:80px}.sidebar.collapsed.mobile-open{left:0;width:180px;min-width:180px;max-width:180px}.sidebar.collapsed.mobile-open .nav-text{display:inline}.sidebar.collapsed.mobile-open .nav-link{justify-content:flex-start}.sidebar.collapsed.mobile-open .nav-link:after{display:none}.sidebar .sidebar-toggle{display:none}.view-container{margin-left:0!important;width:100%!important;padding:var(--spacing-lg);overflow-y:auto!important;overflow-x:hidden;-webkit-overflow-scrolling:touch}.camera-view{overflow:visible}.camera-view .main-content{overflow:visible;height:auto;min-height:100vh}.camera-view{height:auto;min-height:100vh}.app-view{overflow:visible!important;min-height:auto;flex:none}.gallery-content{overflow:visible!important;flex:none}.gallery-controls{position:static}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:var(--z-sidebar-overlay)}.sidebar-overlay.active{display:block}header.app-header .header-content{padding:0 var(--spacing-md);flex-direction:row!important;justify-content:space-between!important;align-items:center!important}.dashboard-grid{grid-template-columns:1fr}.app-view{padding:var(--spacing-sm) var(--spacing-md)}.view-header h1{font-size:1.25rem}.view-description{font-size:.75rem}.sidebar,.sidebar .nav-links{padding:0!important}.sidebar .nav-link{width:100%;margin:0;padding:var(--spacing-md) var(--spacing-lg);border-radius:0}.sidebar .nav-link.active{border-left:4px solid var(--primary-green);padding-left:calc(var(--spacing-lg) - 4px)}.sidebar .sidebar-toggle{padding:var(--spacing-md) var(--spacing-lg);border-radius:0}}@media (min-width: 1920px){.app-view{padding:var(--spacing-xl) var(--spacing-3xl)}}@media (min-width: 1920px){.app-view{padding:var(--spacing-xl) calc(var(--spacing-3xl) * 1.5)}}@media print{.app-header,.sidebar,.user-menu-dropdown{display:none!important}.view-container{margin-left:0;width:100%}}.nav-link:focus,.menu-item:focus,.user-menu-trigger:focus{outline:2px solid var(--primary-green);outline-offset:2px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInScale{0%{transform:translateY(-50px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes recordingPulse{0%,to{box-shadow:0 0 25px #ff47574d}50%{box-shadow:0 0 35px #ff475780}}@keyframes previewGlow{0%,to{box-shadow:0 0 25px #3742fa4d}50%{box-shadow:0 0 35px #3742fa80}}@keyframes recordingBlink{0%,50%{opacity:1}51%,to{opacity:.3}}@keyframes shake{0%,to{transform:scale(1) translate(0)}25%{transform:scale(1) translate(-2px)}75%{transform:scale(1) translate(2px)}}button{background:none;border:none;padding:0;cursor:pointer;font-family:inherit}button:focus{outline:none;box-shadow:0 0 0 3px var(--primary-green-soft)}.btn{padding:.875rem 1.75rem;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all var(--transition-normal);text-decoration:none;display:inline-block;text-align:center;font-family:inherit;font-size:inherit;line-height:inherit;min-height:44px;min-width:44px}.btn-primary{background:var(--primary-green);color:var(--dark-bg)}.btn-primary:hover{background:var(--primary-green-hover);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn-primary:disabled{background:var(--text-muted);cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:transparent;color:var(--text-primary);border:2px solid var(--primary-green)}.btn-secondary:hover{background:var(--primary-green);color:var(--dark-bg)}.btn-danger{background:var(--error-color);color:#fff;border:none;box-shadow:0 0 15px #ff475766}.btn-danger:hover{background:var(--danger-red-dark);transform:translateY(-2px);box-shadow:0 0 25px #ff475799,0 4px 20px #ff47574d}.btn-danger:disabled{background:var(--text-muted);opacity:.5;cursor:not-allowed;box-shadow:none}.btn-outline{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-outline:hover{background:var(--dark-surface);border-color:var(--primary-green)}.btn-outline-danger{background:transparent;color:var(--error-color);border:2px solid var(--error-color)}.btn-outline-danger:hover{background:var(--error-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 20px #ff47574d}.btn-outline-danger:disabled{opacity:.5;cursor:not-allowed;border-color:var(--text-muted);color:var(--text-muted)}.btn-outline.btn-outline-alt{background:transparent;border:1px solid var(--border-default);color:var(--text-primary)}.btn-outline.btn-outline-alt:hover{background:var(--dark-surface-elevated);border-color:var(--primary-green);color:var(--primary-green)}.btn-link{background:none;border:none;color:var(--primary-green);padding:0;text-decoration:none;cursor:pointer;font-weight:400}.btn-link:hover{text-decoration:underline}.btn-link.text-danger{color:var(--error-color)}.btn-link.btn-link-underline{text-decoration:underline;font-size:.875rem}.btn-link.btn-link-underline:hover{color:var(--primary-green-hover)}.btn-icon{background:transparent;border:none;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);cursor:pointer;transition:color var(--transition-normal);min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center}.btn-icon:hover{color:var(--primary-green)}.btn-sm{padding:.625rem 1.25rem;font-size:.875rem;height:auto;min-height:40px;min-width:40px}.btn-full,.btn-block{width:100%}.recording-toggle-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-2xl);border:2px solid var(--primary-green);border-radius:var(--radius-lg);background:var(--dark-surface-elevated);color:var(--text-primary);font-family:var(--font-primary);font-size:1rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.recording-toggle-btn:hover{border-color:var(--primary-green);box-shadow:0 0 20px #00ff8933;transform:translateY(-1px)}.recording-toggle-btn:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px #00ff8933}.recording-toggle-btn:disabled{opacity:.6;cursor:not-allowed;border-color:var(--border-subtle);background:var(--dark-surface)}.recording-toggle-btn:disabled:hover{border-color:var(--border-subtle);box-shadow:none;transform:none}.recording-toggle-btn[data-recording=true]{background:var(--error-color);border-color:var(--error-color);color:var(--text-primary);box-shadow:0 0 25px #ff47574d;animation:recordingPulse 2s ease-in-out infinite}.recording-toggle-btn[data-recording=true]:hover{background:var(--danger-red-stop);border-color:var(--danger-red-stop);box-shadow:0 0 30px #ff475766;transform:translateY(-1px)}.recording-toggle-btn[data-recording=true]:before{content:"";position:absolute;left:var(--spacing-lg);top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--text-primary);border-radius:50%;animation:recordingBlink 1s ease-in-out infinite}.recording-toggle-btn.compact{padding:.5rem 1.5rem;font-size:.875rem}.preview-toggle-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-2xl);border:2px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--dark-surface-elevated);color:var(--text-secondary);font-size:1rem;font-weight:700;text-transform:uppercase;cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.preview-toggle-btn:hover:not(:disabled){border-color:var(--preview-blue);box-shadow:0 0 20px #3742fa33;transform:translateY(-1px)}.preview-toggle-btn:focus{outline:none;border-color:var(--preview-blue);box-shadow:0 0 0 3px #3742fa33}.preview-toggle-btn:disabled{opacity:.6;cursor:not-allowed;border-color:var(--border-subtle);background:var(--dark-surface)}.preview-toggle-btn:disabled:hover{border-color:var(--border-subtle);box-shadow:none;transform:none}.preview-toggle-btn[data-previewing=true]{background:var(--preview-blue);border-color:var(--preview-blue);color:var(--text-primary);box-shadow:0 0 25px #3742fa4d;animation:previewGlow 2s ease-in-out infinite}.preview-toggle-btn[data-previewing=true]:hover{background:var(--preview-blue-hover);border-color:var(--preview-blue-hover);box-shadow:0 0 30px #3742fa66;transform:translateY(-1px)}.play-button{width:64px;height:64px;background:#000000b3;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal)}.video-preview:hover .play-button{transform:scale(1.1);background:#000000e6}.add-camera-btn{margin-top:var(--spacing-xs);padding:.25rem .5rem;font-size:.75rem}.quantity-controls button{width:44px;height:44px;padding:0;display:flex;align-items:center;justify-content:center}.history-actions .btn{font-size:.8rem;padding:.25rem .5rem}.btn-record:disabled,.record-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.control-section button{width:100%}.recording-toggle-btn.compact{flex:1;min-width:150px}}.recording-text{transition:opacity var(--transition-normal)}.dashboard-card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--spacing-lg);transition:all var(--transition-normal)}.dashboard-card:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft)}.card-header{margin-bottom:var(--spacing-md)}.card-header h3{color:var(--text-primary);font-size:1.25rem}.card-header{display:flex;justify-content:space-between;align-items:center}.card-content{flex:1;display:flex;flex-direction:column}.card-icon{font-size:2rem;color:var(--info-color)}.camera-card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-normal);position:relative;width:100%}.camera-card:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft)}.camera-card.recording,.camera-card.monitoring{border-color:var(--primary-green);box-shadow:0 0 10px #00ff894d;background:#00ff890d}.camera-card.state-recording{border-color:var(--danger-red-vivid);box-shadow:0 0 15px #f446;background:#ff444414}.camera-card.paused{border-color:var(--warning-caution);box-shadow:0 0 10px #ffc1074d;background:#ffc1070d}.camera-card.starting{border-color:var(--primary-green);opacity:.8;animation:pulse-border 1.5s ease-in-out infinite}.camera-card.stopping{border-color:var(--text-muted);opacity:.7;animation:pulse-border 1.5s ease-in-out infinite}.camera-card.offline{border-color:var(--text-muted);opacity:.6;filter:grayscale(50%)}.camera-card.error{border-color:var(--danger-red-vivid);box-shadow:0 0 10px #f443;background:#ff444408}@keyframes pulse-border{0%,to{opacity:.7}50%{opacity:1}}.recording-badge{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);display:flex;align-items:center;gap:4px;padding:4px 8px;background:#ff4444e6;color:#fff;font-size:.7rem;font-weight:700;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px;z-index:10}.recording-badge .recording-dot{width:8px;height:8px;background:#fff;border-radius:50%;animation:blink 1s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.control-record.monitoring{background:var(--primary-green);color:var(--bg-primary)}.control-record.recording{background:var(--danger-red-vivid);color:#fff}.control-record.paused{background:var(--warning-caution);color:var(--bg-primary)}.control-record.loading{opacity:.7;pointer-events:none}.camera-card img{will-change:transform;backface-visibility:hidden;transform:translateZ(0)}.video-card.session-video:before{content:attr(data-session-label);position:absolute;top:calc(-1 * var(--spacing-lg) + 5px);left:0;right:0;font-size:.6rem;color:var(--text-muted);font-weight:600;white-space:nowrap;opacity:.7;pointer-events:none;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 12px)}.account-content .dashboard-card{padding:var(--spacing-sm);height:100%;display:flex;flex-direction:column}.profile-info-card .card-header,.security-card .card-header,.account-actions-card .card-header,.danger-zone-card .card-header{margin-bottom:var(--spacing-sm)}.profile-info-card .card-header h3,.security-card .card-header h3,.account-actions-card .card-header h3{font-size:1.1rem}.danger-zone-card .card-header h3{color:var(--error-color);font-size:1.1rem}.danger-zone .card-header{border-bottom:1px solid rgba(239,68,68,.2);padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md)}.agent-status-card .card-header{margin-bottom:var(--spacing-sm)}.agent-status-card .card-header h3{font-size:1.1rem}.local-storage-card .card-header{margin-bottom:var(--spacing-sm)}.local-storage-card .card-header h3{font-size:1.1rem}.billing-content .dashboard-card{padding:var(--spacing-sm);height:100%;display:flex;flex-direction:column}.billing-content .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.camera-preview-card{grid-column:span 2;min-height:440px}.camera-card .camera-preview{position:relative;height:clamp(120px,22vh,210px);background:var(--dark-bg);overflow:hidden;display:flex;align-items:center;justify-content:center}.camera-card .preview-image{width:100%;height:100%;object-fit:cover;padding:0}.camera-card .preview-image.is-placeholder{object-fit:contain;padding:20px}.camera-card .preview-overlay{position:absolute;top:0;left:0;right:0;padding:var(--spacing-sm);background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,transparent 100%);color:#fff;display:flex;justify-content:flex-start;align-items:center}.camera-card .preview-click-hint{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#0006;color:#fff;opacity:0;transition:opacity .2s ease;cursor:pointer;pointer-events:none;z-index:5}.camera-card .preview:hover .preview-click-hint{opacity:1}.camera-card .preview-click-hint .click-icon{width:48px;height:48px;margin-bottom:.5rem;object-fit:contain}.camera-card .preview-click-hint .click-text{font-size:.875rem;font-weight:500}.camera-card .preview-click-hint.loading{opacity:1;background:#0009}.camera-card .preview-click-hint .click-icon.loading-spin{animation:spin 1s linear infinite}.camera-card.monitoring .preview-click-hint{display:none}.camera-card .preview-stats{display:flex;gap:var(--spacing-sm);align-items:center;font-size:.75rem;width:100%;justify-content:flex-start;padding-left:0}.camera-card .stat-fps,.camera-card .stat-res,.camera-card .stat-update{padding:0}.camera-card .camera-controls{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg)}.camera-card .camera-controls .control-record{flex:0 0 auto;margin-bottom:0;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--primary-green);border:none;border-radius:var(--radius-sm);color:var(--dark-bg);font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.camera-card .camera-controls .control-record:hover{background:var(--primary-green-hover, #00e67a);box-shadow:0 0 15px #00ff894d;transform:translateY(-1px)}.camera-card .camera-controls .control-record[data-recording=true]{background:var(--primary-green);color:var(--dark-bg);border-color:var(--primary-green)}.camera-card .record-indicator{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);transition:all var(--transition-normal)}.camera-card .control-record[data-recording=true] .record-indicator{background:var(--danger-red);animation:recordingBlink 1s ease-in-out infinite}.camera-card .camera-checkbox-hidden{display:none}.camera-card .audio-control-container{flex:1 1 auto;min-width:100px;max-width:none;padding:0;background:transparent;border-radius:4px}.camera-card .audio-device-label{display:block;font-size:9px;color:var(--text-secondary);margin-bottom:2px;font-weight:500}.camera-card .audio-device-selector{width:100%;padding:2px 4px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background-color:var(--dark-surface);color:var(--text-primary);font-size:10px;cursor:pointer;transition:all var(--transition-normal);display:block}.camera-card .audio-device-selector:hover{border-color:var(--primary-green)}.camera-card .audio-device-selector:disabled{opacity:.5;cursor:not-allowed}.camera-card .audio-level-meter{width:100%;height:3px;background:var(--border-subtle);border-radius:2px;margin-top:4px;overflow:hidden;display:none}.camera-card .audio-level-bar{height:100%;width:0%;background-color:var(--success-color);transition:width .1s ease-out,background-color .3s ease;border-radius:2px}.camera-card .audio-level-bar.low{background-color:var(--success-color)}.camera-card .audio-level-bar.medium{background-color:var(--warning-caution)}.camera-card .audio-level-bar.high{background-color:var(--error-color)}.camera-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-subtle)}.camera-header h4.camera-name{font-size:1.1rem;font-weight:600;color:var(--primary-green);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.card-details .card-number{font-family:monospace;font-size:1rem;color:var(--text-primary);margin-bottom:.25rem}.card-details .card-expires{font-size:.875rem;color:var(--text-secondary)}.session-videos .video-card{margin:0;flex:0 1 calc((100% - 2.25rem)/4);max-width:180px;min-width:160px}@media (max-width: 768px){.dashboard-card{padding:var(--spacing-md)}.card-header h3{font-size:1.1rem}.camera-card .camera-controls{flex-direction:column;align-items:center;padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.camera-card .camera-controls .control-record{width:100%;max-width:200px}.camera-card .camera-controls .audio-control-container{flex:0 0 auto!important;width:100%!important;max-width:250px!important;display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important;margin-left:0!important;margin-right:0!important}.camera-card .camera-controls .camera-checkbox-hidden{display:none!important}.camera-card .camera-controls .audio-device-label{text-align:center!important;width:100%!important}.camera-card .camera-controls .audio-device-selector{width:100%!important;text-align:center!important}}@media print{.dashboard-card,.settings-section,.billing-section,.support-section{border:1px solid #ccc;break-inside:avoid}}.skeleton{background:linear-gradient(90deg,var(--dark-surface) 25%,var(--dark-surface-elevated) 50%,var(--dark-surface) 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite}.camera-card.skeleton .camera-preview{background:var(--dark-surface)}.camera-card.skeleton .preview-image{display:none}.camera-card{animation:fadeInUp .3s ease forwards;opacity:0}.camera-card:nth-child(1){animation-delay:.1s}.camera-card:nth-child(2){animation-delay:.2s}.camera-card:nth-child(3){animation-delay:.3s}.camera-card:nth-child(4){animation-delay:.4s}.camera-card:nth-child(5){animation-delay:.5s}.camera-card:nth-child(6){animation-delay:.6s}.camera-card.recording .status-indicator{animation:pulse 2s ease-in-out infinite}input,select,textarea{background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:.75rem 1rem;color:var(--text-primary);transition:all var(--transition-normal);width:100%}input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px var(--primary-green-soft)}.form-group{margin-bottom:var(--spacing-md)}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:var(--spacing-sm);color:var(--text-secondary);font-weight:500}.form-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm)}.label-text{color:var(--text-primary);font-weight:500}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-md);cursor:pointer}.checkbox-label.modern{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.checkbox-text{color:var(--text-primary)}.form-checkbox{width:18px;height:18px;accent-color:var(--primary-green)}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:24px;transition:all var(--transition-normal)}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:var(--text-secondary);border-radius:50%;transition:all var(--transition-normal)}.search-box input{width:100%}textarea{resize:vertical;min-height:100px}.contact-support-card textarea{resize:vertical;min-height:80px}.folder-selection-container{display:flex;gap:var(--spacing-sm);align-items:center;margin-bottom:var(--spacing-md)}.folder-selection-container .btn{flex-shrink:0;min-width:80px}.folder-preview{background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-sm)}.camera-selection-item{display:flex;align-items:center;padding:var(--spacing-sm);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.camera-selection-item:hover{border-color:var(--primary-green);background:var(--dark-surface-elevated)}.help-text{font-size:.875rem;color:var(--text-secondary);font-style:italic}.form-help{font-size:.875rem;color:var(--text-secondary);margin-top:var(--spacing-xs)}.filter-controls{display:flex;gap:var(--spacing-md);align-items:center}.quantity-controls{display:flex;align-items:center;gap:var(--spacing-md)}.quantity-controls input{width:60px;text-align:center}@media (max-width: 768px){.form-group{margin-bottom:var(--spacing-sm)}.folder-selection-container{flex-direction:column;align-items:stretch}.folder-selection-container .btn{width:100%}}.modal{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000;z-index:var(--z-dashboard-modal);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity var(--transition-normal),visibility var(--transition-normal),background var(--transition-normal);padding:var(--spacing-lg);pointer-events:none}.modal.show{display:flex;background:#000c;opacity:1;visibility:visible;pointer-events:auto}.modal-content{background:var(--dark-surface-elevated);border-radius:var(--radius-lg);max-width:90vw;max-height:calc(100vh - 4rem);overflow:hidden;box-shadow:0 8px 32px #00000080;border:1px solid var(--border-subtle);transform:scale(.95);opacity:0;transition:transform var(--transition-normal),opacity var(--transition-normal);display:flex;flex-direction:column}.modal.show .modal-content{transform:scale(1);opacity:1}.modal-body{padding:var(--spacing-xl);flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.modal-header{padding:var(--spacing-xl);border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;color:var(--primary-green);font-size:1.5rem;font-weight:600}.modal-close{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-normal)}.modal-body{padding:var(--spacing-xl)}.modal-footer{padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--border-subtle);display:flex;justify-content:flex-end;gap:var(--spacing-md)}.modal-step{display:none}.modal-step.active{display:block}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.payment-modal{max-width:500px;width:100%}#payment-element{margin-bottom:var(--spacing-lg);min-height:300px}.modal-content.plan-modal{width:90%;max-width:1100px;min-width:320px}.plan-modal .modal-body{overflow-x:hidden;overflow-y:auto;max-height:85vh;padding:var(--spacing-md) var(--spacing-sm)}.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md);width:100%;padding:0 var(--spacing-sm)}.plan-option{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;transition:all var(--transition-normal);position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;justify-content:space-between}.plan-option:hover{border-color:var(--primary-green);transform:translateY(-2px);box-shadow:0 4px 12px #00ff8926}.plan-option.current-plan{border:2px solid var(--primary-green);background:linear-gradient(135deg,var(--dark-surface-elevated) 0%,rgba(0,255,137,.05) 100%)}.current-plan-badge{position:absolute;top:.5rem;left:50%;transform:translate(-50%);background:var(--primary-green);color:var(--dark-bg);padding:.25rem .6rem;border-radius:var(--radius-full);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;z-index:var(--z-video-overlay);white-space:nowrap}.plan-option.recommended{background:var(--primary-green-soft);border:2px solid var(--primary-green)}.recommended-badge{position:absolute;top:.5rem;right:.5rem;background:var(--primary-green);color:var(--dark-bg);padding:.15rem .4rem;border-radius:var(--radius-sm);font-size:.6rem;font-weight:600;text-transform:uppercase}.plan-header{margin-bottom:var(--spacing-sm)}.plan-header h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin-bottom:0}.plan-price{margin-bottom:var(--spacing-sm);display:flex;align-items:baseline;justify-content:center;gap:.2rem}.plan-price .currency{color:var(--text-secondary);font-size:.875rem;font-weight:500}.plan-price .amount{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1}.plan-price .period{color:var(--text-secondary);font-size:.75rem;font-weight:400}.plan-features{list-style:none;padding:0;margin:0 0 var(--spacing-md) 0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);min-height:fit-content}.plan-features li{color:var(--text-secondary);font-size:.75rem;padding:0;display:flex;flex-direction:row;align-items:center;justify-content:center;text-align:center;line-height:1.4;gap:.25rem}.plan-features li strong{color:var(--text-primary);font-weight:600}.plan-features .feature-icon{color:var(--primary-green);font-size:.75rem;flex-shrink:0}.plan-option .btn-select-plan,.plan-option .plan-select-btn{width:100%;padding:.75rem 1rem;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);font-size:.875rem;font-weight:500;margin-top:auto;text-align:center;display:block}.plan-option .btn-select-plan:hover:not(:disabled),.plan-option .plan-select-btn:hover:not(:disabled){background:var(--primary-green);border-color:var(--primary-green);color:var(--dark-bg);transform:translateY(-1px);box-shadow:0 2px 8px #00ff894d}.plan-option.current-plan .btn-select-plan,.plan-option.current-plan .plan-select-btn{background:var(--dark-surface);border-color:var(--border-subtle);color:var(--text-muted);cursor:not-allowed;opacity:.6}.plan-option.current-plan .btn-select-plan:hover,.plan-option.current-plan .plan-select-btn:hover{transform:none;background:var(--dark-surface);border-color:var(--border-subtle);color:var(--text-muted);box-shadow:none}.plan-option.recommended .btn-select-plan,.plan-option.recommended .plan-select-btn{background:var(--primary-green);border-color:var(--primary-green);color:var(--dark-bg);font-weight:600}.plan-option.recommended .btn-select-plan:hover:not(:disabled),.plan-option.recommended .plan-select-btn:hover:not(:disabled){background:var(--primary-green-hover);border-color:var(--primary-green-hover);transform:translateY(-1px);box-shadow:0 2px 12px #00ff8966}.plan-note{text-align:center;color:var(--text-muted);font-size:.75rem;margin-top:var(--spacing-md);font-style:italic}.camera-modal{width:500px}.camera-pricing-info{text-align:center;margin-bottom:var(--spacing-xl)}.camera-pricing-info p{color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.change-password-modal{width:400px}.delete-account-modal{width:500px}.delete-account-modal .modal-header h2{color:var(--error-color)}.delete-modal-content{width:100%;max-width:500px;max-height:calc(100vh - 4rem);overflow-y:auto}.delete-modal-content .form-input{box-sizing:border-box}.delete-modal-content .feedback-option{cursor:pointer;padding:.25rem 0}.delete-modal-content .feedback-option:hover span{color:#fff}.delete-modal-content .alternative-actions .btn-outline:hover{border-color:var(--primary-green);color:var(--primary-green)}.video-modal.golden-ratio{width:100%;max-width:none}.video-modal.golden-ratio .modal-content{width:65vw;max-width:1200px;min-width:600px;max-height:85vh;background:var(--dark-surface-elevated);border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 20px 60px #00000080,0 0 100px #00ff890d;display:flex;flex-direction:column;position:relative;animation:modalScaleIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalScaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.video-modal-header{position:absolute;top:var(--spacing-md);right:var(--spacing-md);z-index:var(--z-modal-elements, 10);padding:0}.video-modal-close{background:#00000080;color:var(--primary-green);border:none;width:44px;height:44px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-normal);font-size:1.75rem;font-weight:400;padding:8px;line-height:1;border-radius:50%;position:relative;z-index:var(--z-modal-elements, 10);visibility:visible!important;pointer-events:auto!important}.video-modal-close:hover{transform:scale(1.1);color:var(--primary-green-light);text-shadow:0 0 10px rgba(0,255,137,.8)}.video-modal-close i,.video-modal-close span{color:inherit;display:block}.video-modal-close i:empty+span{display:block!important}.video-modal-close i:not(:empty)+span{display:none}.update-notification-banner{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:var(--primary-green-soft);border:1px solid rgba(0,255,137,.3);border-radius:var(--radius-md);margin-bottom:.75rem;font-size:.8125rem;color:var(--primary-green)}.update-banner-content{display:flex;align-items:center;gap:.5rem}.update-banner-icon{font-size:1rem;font-weight:700}.update-banner-text strong{color:var(--text-primary)}.update-changelog{color:var(--text-secondary);margin-left:.25rem}.update-banner-dismiss{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.125rem;padding:.25rem;line-height:1;transition:color var(--transition-normal)}.update-banner-dismiss:hover{color:var(--text-primary)}.video-modal .video-container{position:relative;background:var(--dark-surface);flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;z-index:var(--z-video-overlay);background-image:repeating-linear-gradient(45deg,var(--dark-surface),var(--dark-surface) 10px,var(--dark-surface-elevated) 10px,var(--dark-surface-elevated) 20px)}.video-modal .video-container video{width:100%;height:100%;max-height:calc(85vh - 80px);object-fit:contain}.video-loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--primary-green);font-size:3rem;z-index:var(--z-card-badge);background:#000c;padding:2rem;border-radius:var(--radius-lg)}.video-buffer-progress,.video-buffer-text{display:none}.video-error-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--error-color);text-align:center;padding:var(--spacing-xl);background:#000000e6;border-radius:var(--radius-md);max-width:80%;font-size:.875rem;z-index:var(--z-modal-elements)}.video-modal video::-webkit-media-controls-start-playback-button,.video-modal video::-webkit-media-controls-loading-panel,.video-modal video::-webkit-media-controls-overlay-loading-container,.video-modal video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none!important}.video-modal video::-moz-loading-spinner{display:none!important}.video-modal video::-ms-media-controls-loading-button,.video-modal video::-ms-loading-indicator{display:none!important}.video-modal video[poster]{background:transparent}.video-modal video.loading{opacity:0;pointer-events:none}.video-loading-spinner i,.video-loading-spinner .fa-spinner{color:var(--primary-green)}.video-modal video{background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.video-modal video:before,.video-modal video:after{display:none}.video-info-panel{padding:var(--spacing-sm) var(--spacing-lg);background:var(--dark-surface-elevated);border-top:1px solid var(--border-subtle);display:flex;align-items:flex-start;min-height:45px;transition:all var(--transition-normal)}.video-info-panel:hover{background:var(--dark-surface)}.video-info-main{text-align:left;width:100%}.video-header-line{display:flex;align-items:flex-start;gap:var(--spacing-lg);width:100%}.video-title{font-size:.95rem;font-weight:600;color:var(--primary-green);flex-shrink:0}.video-metadata{display:flex;gap:var(--spacing-md);color:var(--text-secondary);font-size:.75rem;flex-wrap:wrap;align-items:flex-start;margin-left:auto}.video-metadata:empty:after{content:"No metadata available";color:var(--text-muted);font-style:italic}.video-metadata .meta-item{display:inline-flex;align-items:center;color:var(--text-secondary);font-weight:400}.video-metadata .meta-item.datetime{color:var(--text-primary);font-weight:500}.video-metadata .meta-item.duration{color:var(--text-secondary)}.video-metadata .meta-item.detection-label{color:var(--text-primary);font-weight:400;margin-right:var(--spacing-xs)}.video-metadata .meta-item.visual-detections{color:var(--primary-green);font-weight:500;cursor:help;margin-left:0}.video-metadata .meta-item.audio-detections{color:var(--warning-color, #ffa500);font-weight:500;cursor:help;margin-left:var(--spacing-xs)}.video-actions{display:flex;gap:var(--spacing-sm);align-items:center}.video-actions .btn-icon{padding:var(--spacing-sm);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast)}.video-actions .btn-icon:hover{background:var(--dark-surface-elevated);border-color:var(--primary-green);color:var(--primary-green);transform:translateY(-2px)}.video-actions .btn-primary{padding:var(--spacing-sm) var(--spacing-lg)}.video-session-info{color:var(--text-secondary);font-size:.875rem}.session-videos{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--border-subtle)}.video-modal-content.with-session .video-modal-body{display:flex;gap:0;height:100%}.video-modal-content.with-session .video-main-container{flex:1;display:flex;flex-direction:column;min-width:0}.session-sidebar{width:280px;background:var(--dark-surface);border-left:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden}.session-sidebar-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.session-sidebar-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.session-count{background:var(--dark-surface-elevated);padding:4px 10px;border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-secondary);margin-right:50px}.session-video-list{flex:1;overflow-y:auto;padding:var(--spacing-md)}.session-video-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-sm);margin-bottom:var(--spacing-sm);background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.session-video-item:hover{background:var(--dark-surface);border-color:var(--primary-green-soft)}.session-video-item.active{background:#00ff891a;border-color:var(--primary-green)}.session-video-thumbnail{width:80px;height:45px;position:relative;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--dark-bg)}.session-video-thumbnail img{width:100%;height:100%;object-fit:cover}.playing-indicator{position:absolute;bottom:0;left:0;right:0;background:var(--primary-green);color:var(--dark-bg);padding:2px;font-size:.65rem;font-weight:600;text-align:center;text-transform:uppercase}.session-video-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.session-video-time{font-size:.875rem;font-weight:500;color:var(--text-primary)}.session-video-duration{font-size:.75rem;color:var(--text-secondary)}.session-video-detections{font-size:.7rem;color:var(--primary-green);margin-top:2px}.session-video-list .loading-message,.session-video-list .no-videos,.session-video-list .error{text-align:center;padding:var(--spacing-xl);color:var(--text-muted);font-size:.875rem}@media (max-width: 1200px){.session-sidebar{width:240px}.session-video-thumbnail{width:70px;height:40px}}@media (max-width: 768px){.video-modal-content.with-session .video-modal-body{flex-direction:column}.session-sidebar{width:100%;max-height:200px;border-left:none;border-top:1px solid var(--border-subtle)}}.session-videos h3{color:var(--text-primary);margin-bottom:var(--spacing-lg);font-size:1.1rem}.session-videos-grid{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-start}@media (max-width: 1200px){.plan-modal{width:95vw}.plans-grid{gap:.5rem}.plan-option{padding:var(--spacing-sm)}}@media (max-width: 768px){.plans-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.plan-modal .modal-body,.plan-option{padding:var(--spacing-md)}.plan-price .amount{font-size:1.75rem}}@media (max-width: 768px){.plan-header h3{font-size:1rem}.plan-price .amount{font-size:1.25rem}.plan-features li{font-size:.7rem}.btn-select-plan{font-size:.7rem;padding:.4rem .5rem}}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.modal.show .modal-content{animation:modalFadeIn .3s ease-out}@media (max-width: 1200px){.video-modal.golden-ratio .modal-content{width:75vw}}@media (max-width: 768px){.modal-content{margin:var(--spacing-md);max-width:calc(100vw - var(--spacing-xl));max-height:calc(100vh - var(--spacing-xl))}.video-modal.golden-ratio .modal-content{width:90vw;min-width:unset}.video-info-panel{padding:var(--spacing-xs) var(--spacing-md);min-height:40px}.video-title{font-size:.875rem}.video-metadata{font-size:.7rem;gap:var(--spacing-sm)}.video-header-line{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.video-metadata{margin-left:0}.video-actions{width:100%;justify-content:flex-end}.plan-modal,.payment-modal,.camera-modal,.delete-account-modal{width:100%;max-width:500px}.delete-modal-content{max-width:calc(100vw - 2rem);padding:1.5rem}.plans-grid{grid-template-columns:1fr}.modal-header,.modal-body{padding:var(--spacing-lg)}.video-modal{max-width:100%}.video-modal-content{border-radius:0}}@media (max-width: 768px){.modal-header h2{font-size:1.25rem}.modal-footer{flex-direction:column}.modal-footer button{width:100%}}.remove-agent-modal{width:480px;max-width:90vw}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000c;z-index:var(--z-emergency);display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;pointer-events:auto}.remove-agent-modal .modal-header h3{color:var(--warning-color);font-size:1.2rem;margin:0;font-weight:600}.remove-agent-modal .modal-body{text-align:center;padding:var(--spacing-xl)}.confirmation-icon{margin-bottom:var(--spacing-lg)}.confirmation-icon i{font-size:3rem;color:var(--warning-color)}.confirmation-message{text-align:left}.confirmation-message p{margin-bottom:var(--spacing-md);color:var(--text-primary);line-height:1.5}.confirmation-message strong{color:var(--text-primary);font-size:1.05rem}.confirmation-message ul{list-style:none;padding:0;margin:var(--spacing-md) 0;background:var(--dark-surface);border-radius:var(--radius-md);padding:var(--spacing-md);border-left:3px solid var(--warning-color)}.confirmation-message li{color:var(--text-secondary);margin-bottom:var(--spacing-sm);padding-left:var(--spacing-md);position:relative;font-size:.9rem}.confirmation-message li:last-child{margin-bottom:0}.confirmation-message li:before{content:"•";color:var(--warning-color);position:absolute;left:0;font-weight:700}.modal:not(.show){pointer-events:none}body.modal-open{overflow:hidden}.modal-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);min-height:200px}.modal-loading .spinner{width:40px;height:40px;border:3px solid var(--border-subtle);border-top-color:var(--primary-green);border-radius:50%;animation:spin 1s linear infinite}.visual-detections.has-more-tags,.audio-detections.has-more-tags{position:relative;cursor:pointer}.tags-popup{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-sm);min-width:160px;max-width:280px;box-shadow:0 4px 16px #0006;z-index:1000}.tags-popup:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--dark-surface-elevated)}.tags-popup:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:7px solid transparent;border-top-color:var(--border-subtle)}.visual-detections.has-more-tags:hover .tags-popup,.audio-detections.has-more-tags:hover .tags-popup{display:block}.tags-popup-title{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-subtle)}.tags-popup-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tags-popup-list .tag-item{background:var(--dark-surface);color:var(--text-primary);padding:2px 8px;border-radius:var(--radius-sm);font-size:.8rem;white-space:nowrap}.status-indicator{width:8px;height:8px;border-radius:50%;background:var(--danger-red);display:inline-block}.status-indicator.connected{background:var(--success-green);box-shadow:0 0 4px var(--success-green)}.status-indicator.disconnected{background:var(--danger-red)}.camera-status{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--success-color)}.header-right{display:flex;align-items:center;gap:var(--spacing-md);margin-right:calc(var(--spacing-2xl) - var(--spacing-lg))}#agentStatusIndicator{margin-left:var(--spacing-xs)}#agentStatusIndicator .status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:6px}#agentStatusIndicator .status-dot.status-online{background-color:var(--success-color);animation:pulse 2s infinite}#agentStatusIndicator .status-dot.status-offline{background-color:var(--danger-red-light)}#agentStatusIndicator .status-dot.status-connecting{background-color:var(--warning-orange);animation:pulse 1s infinite}#agentStatusIndicator .status-dot.status-degraded{background-color:var(--warning-orange);animation:pulse 2s infinite}.status-section{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap;flex:1}.status-section .status-item{display:flex;align-items:center;gap:var(--spacing-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0;border-bottom:none}.status-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 0;border-bottom:1px solid var(--border-subtle)}.status-item:last-child{border-bottom:none}.status-label{color:var(--text-secondary);font-size:.875rem;margin-right:var(--spacing-xs)}.status-label.fixed-width{min-width:60px;flex:0 0 60px;text-align:left}.status-value{color:var(--text-primary);font-weight:500;font-size:.875rem}.status-value.connected{color:var(--success-green)}.status-value.connecting{color:var(--warning-yellow)}.status-value.disconnected{color:var(--text-muted)}.status-value.degraded{color:var(--warning-orange)}.status-value.flex{font-weight:500;display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.status-row{display:flex;align-items:center;gap:var(--spacing-md);font-size:.85rem;line-height:1.5}.status-text{font-weight:500}.status-text.connected{color:var(--success-green)}.status-text.connecting{color:var(--warning-yellow)}.status-text.disconnected{color:var(--text-muted)}.status-text.degraded{color:var(--warning-orange)}.help-text{color:var(--text-muted);font-size:.85rem;margin-top:var(--spacing-sm);line-height:1.4}.notification-container{position:fixed;top:80px;right:20px;z-index:var(--z-notification);display:flex;flex-direction:column;gap:10px;max-width:400px}.error-notification{background:var(--dark-surface-elevated);border-radius:var(--radius-md);padding:16px;box-shadow:0 4px 20px #00000080;border-left:4px solid var(--text-secondary);display:flex;align-items:center;gap:12px;opacity:1;transform:translate(0);transition:all .3s ease;animation:slideIn .3s ease}.error-notification.success{border-left-color:var(--primary-green);background:#00ff891a}.error-notification.error{border-left-color:var(--danger-red-light);background:#ff66661a}.error-notification.warning{border-left-color:var(--warning-amber);background:#ffaa001a}.error-notification.info{border-left-color:var(--info-blue);background:#00aaff1a}.notification-content{display:flex;align-items:center;gap:12px}.notification-icon{font-size:1.2rem;font-weight:700}.error-notification.success .notification-icon{color:var(--primary-green)}.error-notification.error .notification-icon{color:var(--danger-red-light)}.error-notification.warning .notification-icon{color:var(--warning-amber)}.error-notification.info .notification-icon{color:var(--info-blue)}.notification-message{flex:1;color:var(--text-primary);font-size:.9rem}.notification-close{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-normal)}.notification-close:hover{background:#ffffff1a;color:var(--text-primary)}.error-notification.fade-out{opacity:0;transform:translate(100%)}.plan-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;display:inline-block}.plan-badge.basic{background:var(--primary-green-soft);color:var(--primary-green)}.plan-badge.plus{background:transparent;color:var(--primary-green);border-color:var(--primary-green)}.plan-badge.pro{background:#ffd70033;color:var(--warning-gold)}.audio-warning{background:#ffaa001a;border:1px solid rgba(255,170,0,.3);border-radius:var(--radius-sm);padding:8px 12px;font-size:.75rem;color:var(--warning-amber);display:flex;align-items:center;gap:8px;margin-top:var(--spacing-sm)}.error-message{color:var(--error-color);font-size:.875rem;margin-bottom:var(--spacing-md)}.success-message{color:var(--success-color);font-size:.875rem;margin-bottom:var(--spacing-md)}.info-message{color:var(--primary-green);font-size:.875rem;margin-bottom:var(--spacing-md)}.save-indicator{display:none;align-items:center;gap:var(--spacing-xs);color:var(--primary-green);font-size:.875rem}.save-indicator.show{display:flex}@media (max-width: 768px){.notification-container{left:20px;right:20px;max-width:none}.status-section{flex-wrap:wrap;gap:var(--spacing-sm)}.status-section .status-item{justify-content:flex-start;white-space:normal}.header-right{margin-right:0}}@media (min-width: 1920px){.header-right{margin-right:calc(var(--spacing-3xl) - var(--spacing-lg))}}@media (min-width: 1920px){.header-right{margin-right:calc(var(--spacing-3xl) * 1.5 - var(--spacing-lg))}}#storage-limit-banner{position:fixed;bottom:96px;right:20px;left:auto;top:auto;max-width:400px;padding:16px 20px;color:var(--text-primary);z-index:var(--z-critical-modal);display:flex;align-items:center;gap:12px;font-weight:500;font-size:.9rem;background:var(--dark-surface-elevated);border-radius:var(--radius-md);border-left:4px solid var(--warning-amber);box-shadow:0 4px 20px #00000080;animation:slideIn .3s ease}#storage-limit-banner.storage-banner-warning{background:#ffaa001a;border-left-color:var(--warning-amber)}#storage-limit-banner.storage-banner-error{background:#ff66661a;border-left-color:var(--danger-red-light)}#storage-limit-banner span{flex:1;line-height:1.4}#storage-limit-banner button{flex-shrink:0;background:var(--primary-green);color:var(--dark-bg);border:none;padding:8px 16px;border-radius:var(--radius-sm);font-weight:600;font-size:.85rem;cursor:pointer;transition:all var(--transition-normal)}#storage-limit-banner button:hover{background:var(--primary-green-hover);transform:translateY(-1px)}#storage-limit-banner button.close-btn{background:none;color:var(--text-secondary);padding:4px 8px;font-size:1.2rem}#storage-limit-banner button.close-btn:hover{background:#ffffff1a;color:var(--text-primary);transform:none}@media (max-width: 768px){#storage-limit-banner{left:20px;right:20px;max-width:none;bottom:88px;padding:14px 16px;gap:10px;font-size:.875rem}#storage-limit-banner button{padding:6px 12px;font-size:.8rem}}@media (max-width: 480px){#storage-limit-banner{flex-wrap:wrap;padding:12px 14px;gap:10px}#storage-limit-banner span{width:100%}#storage-limit-banner button.close-btn{position:absolute;top:8px;right:8px}}.control-all-info{text-align:center;margin-top:var(--spacing-md)}.recording-control-container{display:flex;justify-content:center;align-items:center;padding:var(--spacing-lg)}.recording-control-card{grid-column:span 2;margin-bottom:var(--spacing-lg)}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px}.toggle-input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--dark-surface);border:1px solid var(--border-default);transition:.4s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:var(--text-secondary);transition:.4s;border-radius:50%}.toggle-input:checked+.toggle-slider{background-color:var(--primary-green);border-color:var(--primary-green)}.toggle-input:checked+.toggle-slider:before{transform:translate(24px);background-color:#fff}.toggle-icon{width:24px;height:24px}nav.sidebar.collapsed .sidebar-toggle .toggle-icon{transform:rotate(180deg)}.gallery-controls{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);flex-wrap:wrap}.filter-controls{display:flex;gap:var(--spacing-md)}.camera-controls{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg)}.camera-controls .control-record{flex:0 0 auto;min-width:90px;margin-bottom:0}.control-record{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--primary-green);border:none;border-radius:var(--radius-sm);color:var(--dark-bg);font-size:.85rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.control-record:hover:not(:disabled){background:var(--primary-green-hover, #00e67a);box-shadow:0 0 15px #00ff894d;transform:translateY(-1px)}.control-record[data-recording=true]{background:var(--error-color);color:#fff;box-shadow:0 0 20px #ff47574d;animation:recordingPulse 2s ease-in-out infinite}.control-record[data-recording=true]:hover{background:var(--danger-red-stop);box-shadow:0 0 25px #ff475766;transform:translateY(-1px)}.control-record:disabled{opacity:.5;cursor:not-allowed}.control-record.agent-disconnected,.control-authenticate.agent-disconnected{opacity:.4;cursor:not-allowed;background:var(--dark-surface)!important;border-color:var(--border-default)!important;color:var(--text-muted)!important;box-shadow:none!important;animation:none!important}.control-record.agent-disconnected:hover,.control-authenticate.agent-disconnected:hover{transform:none!important;background:var(--dark-surface)!important}.record-indicator{width:12px;height:12px;border-radius:50%;background:var(--text-secondary)}.control-record[data-recording=true] .record-indicator{background:var(--danger-red);animation:pulse 2s ease-in-out infinite}.quantity-controls{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.quantity-input{width:60px;text-align:center;background:var(--dark-surface);border:1px solid var(--border-subtle);color:var(--text-primary);padding:var(--spacing-sm);border-radius:var(--radius-sm)}.quantity-input::-webkit-inner-spin-button,.quantity-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity-input[type=number]{-moz-appearance:textfield}.quantity-controls button{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:600}.audio-control-container{flex:1 1 auto;min-width:100px;max-width:none;padding:0;background:transparent;border-radius:4px}.audio-device-label{display:block;font-size:.7rem;color:var(--text-secondary);margin-bottom:4px;text-align:center}.range-labels{display:flex;justify-content:space-between;margin-top:var(--spacing-xs);font-size:.75rem;color:var(--text-muted)}input[type=range]{width:100%;height:6px;background:var(--dark-surface);outline:none;border-radius:3px;-webkit-appearance:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:var(--primary-green);cursor:pointer;border-radius:50%}input[type=range]::-moz-range-thumb{width:16px;height:16px;background:var(--primary-green);cursor:pointer;border-radius:50%;border:none}@media (max-width: 768px){.gallery-controls{flex-direction:column}.gallery-controls.compact{flex-direction:column;gap:var(--spacing-sm)}.filter-controls{width:100%}.control-section{flex-direction:column;gap:var(--spacing-sm)}.control-section button{width:100%}}.two-factor-modal.modal{top:0;left:0;right:0;bottom:0;transform:none}.two-factor-modal .modal-content{max-width:700px;width:90vw;max-height:85vh}.two-factor-modal .modal-body{max-width:100%;margin:0 auto;padding:var(--spacing-lg);overflow-y:auto}.two-factor-setup{display:flex;flex-direction:column;gap:var(--spacing-xl)}.setup-step{display:flex;align-items:flex-start;gap:var(--spacing-md)}.step-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--primary-green-soft);color:var(--primary-green);border-radius:50%;font-weight:600;flex-shrink:0}.step-content{flex:1}.step-content h4{margin:0 0 var(--spacing-xs) 0;font-size:1rem;color:var(--text-primary)}.step-content p{margin:0;color:var(--text-secondary);font-size:.875rem}.qr-code-container{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;margin:var(--spacing-md) 0}.qr-code-wrapper{display:inline-block;padding:var(--spacing-md);background:#fff;border:2px solid var(--border-subtle);border-radius:var(--radius-md)}.qr-code-wrapper canvas{display:block}.manual-entry{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-subtle)}.manual-entry-toggle{color:var(--primary-green);cursor:pointer;font-size:.875rem;text-decoration:underline}.manual-entry-toggle:hover{color:var(--primary-green-hover)}.secret-key-display{margin-top:var(--spacing-sm);padding:var(--spacing-md);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-family:monospace;font-size:.875rem;word-break:break-all;-webkit-user-select:all;user-select:all}.verification-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--border-subtle)}.verification-input-group{display:flex;gap:var(--spacing-sm);justify-content:center;margin:var(--spacing-lg) 0}.verification-input{width:50px;height:50px;text-align:center;font-size:1.5rem;font-weight:600;border:2px solid var(--border-default);border-radius:var(--radius-md);background:var(--dark-surface);color:var(--text-primary);transition:all var(--transition-fast)}.verification-input:focus{border-color:var(--primary-green);box-shadow:0 0 0 3px #00ff891a}.verification-input.error{border-color:var(--error-color);animation:shake .3s ease-in-out}.two-factor-status{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md);margin-top:var(--spacing-md);font-size:.875rem}.two-factor-status.success{background:#4caf501a;color:var(--success-color);border:1px solid rgba(76,175,80,.3)}.two-factor-status.error{background:#f443361a;color:var(--error-color);border:1px solid rgba(244,67,54,.3)}.recovery-codes-container{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.recovery-codes-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.recovery-codes-header h4{margin:0;color:var(--warning-yellow)}.recovery-codes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin:var(--spacing-md) 0}.recovery-code{padding:var(--spacing-sm);background:var(--dark-bg);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-family:monospace;font-size:.875rem;text-align:center;-webkit-user-select:all;user-select:all}.recovery-codes-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.disable-two-factor{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:#f443360d;border:1px solid rgba(244,67,54,.2);border-radius:var(--radius-lg)}.disable-two-factor h4{margin:0 0 var(--spacing-sm) 0;color:var(--error-color)}.disable-two-factor p{margin:0 0 var(--spacing-md) 0;color:var(--text-secondary);font-size:.875rem}.two-factor-methods{text-align:center;padding:var(--spacing-lg) 0}.two-factor-methods h3{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary)}.method-description{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.method-options{display:flex;flex-direction:column;gap:var(--spacing-md)}.method-option{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--dark-surface);border:2px solid var(--border-subtle);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.method-option:hover{border-color:var(--border-default);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.method-option.recommended{border-color:var(--primary-green-soft);background:#00ff890d}.method-icon{font-size:2.5rem;flex-shrink:0}.method-info{flex:1;text-align:left}.method-info h4{margin:0 0 var(--spacing-xs) 0;color:var(--text-primary);display:flex;align-items:center;gap:var(--spacing-sm)}.method-info p{margin:0;color:var(--text-secondary);font-size:.875rem}.badge{background:var(--primary-green);color:var(--dark-bg);padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.select-method{flex-shrink:0}.sms-setup,.email-setup,.authenticator-setup{padding:var(--spacing-lg)}.setup-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.back-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:all var(--transition-fast)}.back-btn:hover{background:var(--dark-surface);color:var(--text-primary)}.setup-content{max-width:400px;margin:0 auto}.phone-input-group{display:flex;gap:var(--spacing-sm);margin:var(--spacing-md) 0;align-items:stretch}.country-select{flex-shrink:0;padding:var(--spacing-md);background:var(--dark-bg);border:2px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;min-width:110px;max-width:130px;font-weight:500;transition:border-color var(--transition-fast)}.country-select:hover,.country-select:focus{border-color:var(--primary-green-soft);outline:none}.country-select.compact{min-width:100px;max-width:120px}.phone-input{flex:1;padding:var(--spacing-md);background:var(--dark-surface);border:2px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem}.sms-verify-section,.email-verify-section{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--border-subtle)}.email-display{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin:var(--spacing-lg) 0}.email-display i{font-size:1.5rem;color:var(--primary-green)}.two-factor-success{text-align:center;padding:var(--spacing-xl)}.success-icon{font-size:4rem;margin-bottom:var(--spacing-lg)}.manage-two-factor{padding:var(--spacing-xl);text-align:center}.current-method{margin:var(--spacing-xl) 0}.method-display{display:inline-flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-top:var(--spacing-md)}.method-icon{font-size:1.5rem}.method-name{font-weight:500;color:var(--text-primary)}.manage-actions{display:flex;flex-direction:column;gap:var(--spacing-md);max-width:300px;margin:var(--spacing-xl) auto 0}.mfa-setup{padding:0;max-width:600px;margin:0 auto}.mfa-setup h3{font-size:1.25rem;margin:0 0 var(--spacing-sm) 0}.mfa-setup>p{font-size:.9rem;color:var(--text-secondary);margin-bottom:var(--spacing-md)}.phone-setup{background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin:var(--spacing-lg) 0}.phone-setup h4{margin:0;color:var(--text-primary);font-size:1.1rem}.phone-setup p{font-size:.875rem;color:var(--text-secondary);margin:0 0 var(--spacing-md) 0}.verify-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-subtle)}.verify-section p{font-size:.875rem;margin:0 0 var(--spacing-sm) 0}.mfa-benefits{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:#00ff890d;border:1px solid var(--primary-green-soft);border-radius:var(--radius-md)}.mfa-benefits h5{margin:0 0 var(--spacing-md) 0;color:var(--primary-green)}.mfa-benefits ul{margin:0;padding-left:var(--spacing-lg);color:var(--text-secondary)}.mfa-benefits li{margin-bottom:var(--spacing-xs)}.mfa-success{text-align:center;padding:var(--spacing-xl)}.mfa-info{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);text-align:left}.mfa-info h4{margin:0 0 var(--spacing-md) 0;color:var(--text-primary)}.mfa-info ul{margin:0;padding-left:var(--spacing-lg);color:var(--text-secondary)}.manage-mfa{padding:var(--spacing-xl);text-align:center}.mfa-status{padding:var(--spacing-lg);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin:var(--spacing-xl) 0}.mfa-status p{margin:var(--spacing-sm) 0;color:var(--text-secondary)}.mfa-actions{display:flex;flex-direction:column;gap:var(--spacing-md);max-width:300px;margin:0 auto}.grecaptcha-badge{bottom:14px!important;left:14px!important;right:auto!important}.country-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:var(--z-notification);padding:var(--spacing-lg)}.country-modal-content{background:var(--dark-surface-elevated);border-radius:var(--radius-lg);max-width:450px;width:90%;max-height:70vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080;overflow:hidden}.country-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-subtle)}.country-modal-header h4{margin:0;color:var(--text-primary)}.close-btn{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.close-btn:hover{background:var(--dark-surface);color:var(--text-primary)}.country-search{margin:var(--spacing-lg) var(--spacing-lg) 0 var(--spacing-lg);padding:var(--spacing-md);background:var(--dark-bg);border:2px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;width:calc(100% - 2 * var(--spacing-lg));box-sizing:border-box}.country-list{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.country-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.country-item:hover{background:var(--dark-surface)}.country-flag{font-size:1.5rem}.country-name{flex:1;color:var(--text-primary)}.country-code{color:var(--text-secondary);font-family:monospace;min-width:50px;text-align:right}.camera-limit-banner{position:fixed;top:70px;right:1rem;z-index:1000;width:280px;background:var(--dark-surface-elevated, #1a1a2e);border:1px solid var(--border-subtle, rgba(255, 255, 255, .12));border-radius:8px;padding:.875rem;box-shadow:0 8px 24px #0006,0 2px 8px #0003;animation:slideInRight .3s ease-out}.camera-limit-banner.hiding{animation:slideOutRight .2s ease-out forwards}.camera-limit-banner-content{display:flex;flex-direction:column;gap:.625rem}.camera-limit-banner-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:#00ff891f;border-radius:6px;color:var(--primary-green, #00ff89);font-size:.75rem;flex-shrink:0}.camera-limit-banner-header{display:flex;align-items:center;gap:.5rem}.camera-limit-banner-text{flex:1;color:var(--text-secondary, rgba(255, 255, 255, .7));font-size:.75rem;line-height:1.4}.camera-limit-banner-text strong{display:block;font-weight:600;font-size:.8125rem;margin-bottom:.25rem;color:var(--text-primary, #fff)}.camera-limit-banner-text span{font-size:.6875rem;color:var(--text-secondary, rgba(255, 255, 255, .6));line-height:1.4}.camera-limit-banner-actions{display:flex;flex-direction:column;gap:.375rem}.camera-limit-banner-actions .btn{width:100%;padding:.5rem .75rem;font-size:.6875rem;line-height:1.2;border-radius:6px;justify-content:center}.camera-limit-banner-actions .btn-primary{background:var(--primary-green, #00ff89);color:var(--dark-bg);border:none;font-weight:600}.camera-limit-banner-actions .btn-primary:hover{background:var(--primary-green-hover)}.camera-limit-banner-actions .btn-outline{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-secondary, rgba(255, 255, 255, .7))}.camera-limit-banner-actions .btn-outline:hover{background:#ffffff0d;border-color:#ffffff40;color:var(--text-primary)}.camera-limit-banner-actions .btn-ghost{position:absolute;top:.5rem;right:.5rem;width:24px;height:24px;padding:0;color:#fff6;border-radius:4px}.camera-limit-banner-actions .btn-ghost:hover{color:var(--text-primary);background:#ffffff1a}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}.camera-limit-modal .modal-container{background:var(--dark-surface-elevated, #1a1a2e);border-radius:12px;max-width:420px;width:90vw;max-height:calc(100vh - 4rem);overflow:hidden;box-shadow:0 16px 48px #0009,0 4px 16px #0006;border:1px solid var(--border-subtle, rgba(255, 255, 255, .1));transform:scale(.95);opacity:0;transition:transform .2s ease-out,opacity .2s ease-out}.camera-limit-modal.visible .modal-container{transform:scale(1);opacity:1}.camera-limit-modal .modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-subtle, rgba(255, 255, 255, .1))}.camera-limit-modal .modal-close{background:transparent;border:none;color:var(--text-secondary, rgba(255, 255, 255, .6));cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s}.camera-limit-modal .modal-close:hover{background:#ffffff1a;color:var(--text-primary, #fff)}.camera-limit-modal .modal-body{padding:1.25rem}.camera-limit-modal .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid var(--border-subtle, rgba(255, 255, 255, .1))}.camera-limit-modal .modal-header h3{display:flex;align-items:center;gap:.5rem}.camera-limit-modal .modal-header h3 i{color:var(--primary-green, #00ff89)}.limit-info{text-align:center;padding:1rem 0;border-bottom:1px solid var(--border-subtle, rgba(255, 255, 255, .1));margin-bottom:1rem}.limit-icon{position:relative;display:inline-block;margin-bottom:.75rem}.limit-icon i{font-size:2.5rem;color:var(--text-secondary, rgba(255, 255, 255, .7))}.limit-badge{position:absolute;bottom:-4px;right:-8px;background:var(--primary-green, #00ff89);color:var(--dark-bg);font-size:.6875rem;font-weight:600;padding:.125rem .375rem;border-radius:8px;white-space:nowrap}.limit-info p{margin:.5rem 0;color:var(--text-secondary)}.limit-info p strong{color:var(--text-primary)}.limit-options{display:flex;flex-direction:column;gap:.5rem}.limit-option{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--dark-surface, rgba(255, 255, 255, .03));border:1px solid var(--border-subtle, rgba(255, 255, 255, .08));border-radius:6px;cursor:pointer;transition:all .2s ease}.limit-option:hover{background:#00ff8914;border-color:var(--primary-green, #00ff89);transform:translate(2px)}.limit-option:active{transform:translate(1px)}.option-icon{flex-shrink:0;width:32px;height:32px;background:#00ff891a;border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--primary-green, #00ff89)}.option-icon i{font-size:.875rem}.option-content{flex:1}.option-content strong{display:block;color:var(--text-primary, #fff);margin-bottom:.125rem;font-size:.8125rem}.option-content span{font-size:.75rem;color:var(--text-secondary, rgba(255, 255, 255, .6))}.limit-option>i.fa-chevron-right{color:var(--text-secondary, rgba(255, 255, 255, .5));font-size:.625rem;opacity:0;transition:opacity .2s}.limit-option:hover>i.fa-chevron-right{opacity:1;color:var(--primary-green, #00ff89)}.highlight-pulse{animation:highlightPulse 2s ease-out}@keyframes highlightPulse{0%,to{box-shadow:0 0 #00ff8900}25%,75%{box-shadow:0 0 0 6px #00ff8940}50%{box-shadow:0 0 0 10px #00ff8926}}.camera-card.over-limit{opacity:.6;border-color:var(--border-subtle, rgba(255, 255, 255, .15))}.camera-card.over-limit:after{content:"Limit";position:absolute;top:6px;right:6px;background:var(--primary-green, #00ff89);color:var(--dark-bg);font-size:.5625rem;font-weight:600;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase;letter-spacing:.025em}.camera-card.over-limit .btn-record{opacity:.4;pointer-events:none}@media (max-width: 768px){.camera-limit-banner{width:260px;right:.5rem;padding:.75rem}.camera-limit-banner-text strong{font-size:.75rem}.camera-limit-banner-text span{font-size:.625rem}.camera-limit-banner-actions .btn{padding:.375rem .5rem;font-size:.625rem}.limit-option{padding:.625rem}.option-icon{width:28px;height:28px}}.user-menu-dropdown{width:240px!important;padding:.5rem!important}.user-info{padding:.5rem!important;display:flex;flex-direction:column;gap:.25rem;align-items:center;text-align:center}.user-name{font-size:.875rem!important;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.125rem!important}.user-email{font-size:.75rem!important;margin-bottom:0!important;color:var(--text-secondary)!important}.user-plan{display:inline-block;font-size:.7rem!important;color:var(--primary-green)!important;background:var(--primary-green-soft);padding:.125rem .375rem;border-radius:var(--radius-sm);font-weight:500;margin-left:.5rem}.menu-divider{margin:.375rem 0!important;height:1px!important;background:var(--border-subtle)!important;border:none!important}.menu-item{padding:.375rem .5rem!important;font-size:.8125rem!important;margin:.125rem 0!important}.menu-actions{display:flex;gap:.25rem;padding:.25rem;align-items:center;justify-content:space-between}.menu-actions .menu-item{display:flex!important;width:auto!important;flex:1;text-align:center;justify-content:center;align-items:center;margin:0!important;padding:.25rem .5rem!important;font-size:.8125rem!important;border-radius:var(--radius-sm)!important;min-height:28px;white-space:nowrap}.menu-actions .sign-out-btn{background:#ef44441a!important;color:var(--error-color)!important}.menu-actions .sign-out-btn:hover{background:#ef444433!important;color:var(--danger-red-dark)!important}.user-avatar{width:36px!important;height:36px!important;font-size:.875rem!important}.checkout-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a0b0feb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--z-modal, 1050);display:flex;align-items:center;justify-content:center;padding:clamp(.5rem,2vw,1rem);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}.checkout-overlay.active{opacity:1;visibility:visible}.checkout-modal{background:var(--dark-bg, #0a0b0f);border:1px solid var(--border-subtle, rgba(255, 255, 255, .1));border-radius:var(--radius-xl, 16px);padding:0;max-width:780px;width:100%;max-height:92vh;overflow-y:auto;box-shadow:0 24px 80px #0009;transform:translateY(20px) scale(.97);transition:transform .25s ease}.checkout-overlay.active .checkout-modal{transform:translateY(0) scale(1)}.checkout-header{padding:clamp(.875rem,1.5vw,1.25rem) clamp(1rem,2vw,1.5rem) clamp(.75rem,1vw,1rem);border-bottom:1px solid var(--border-subtle, rgba(255, 255, 255, .08));text-align:center;position:relative}.checkout-header h2{color:var(--text-primary, #fff);font-size:clamp(1.05rem,1vw + .5rem,1.25rem);font-weight:600;margin:0}.checkout-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--text-muted, #8891a3);font-size:1.5rem;cursor:pointer;padding:.375rem .625rem;border-radius:8px;line-height:1;transition:all .2s ease}.checkout-close:hover{color:var(--text-primary, #fff);background:var(--dark-surface-elevated, #22252d)}.checkout-two-column{display:grid;grid-template-columns:1fr .75fr;gap:0}.checkout-left{padding:clamp(.875rem,1.5vw,1.25rem) clamp(1rem,2vw,1.5rem);display:flex;flex-direction:column;gap:.75rem}.checkout-right{background:var(--dark-surface, #14161c);border-left:1px solid var(--border-subtle, rgba(255, 255, 255, .08));padding:clamp(.875rem,1.5vw,1.25rem) clamp(1rem,2vw,1.5rem)}.checkout-right h4{color:var(--text-primary, #fff);font-size:.9rem;font-weight:600;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.04em}.checkout-modal .form-section{background:var(--dark-surface-elevated, #22252d);border:1px solid var(--border-subtle, rgba(255, 255, 255, .08));border-radius:var(--radius-md, 8px);padding:1rem;margin-bottom:0}.checkout-modal .form-section:hover{border-color:#ffffff26}.checkout-modal .form-section h4{color:var(--text-primary, #fff);font-size:.85rem;font-weight:600;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.checkout-modal .form-section h4 svg{color:var(--primary-green, #00ff89);flex-shrink:0}.checkout-modal .form-group{margin-bottom:.75rem}.checkout-modal .form-group:last-child{margin-bottom:0}.checkout-modal .form-group label{display:block;color:var(--text-secondary, #b8bcc8);font-weight:500;margin-bottom:.375rem;font-size:.8rem}.checkout-modal .form-input{width:100%;padding:.5rem .75rem;background:var(--dark-bg, #0a0b0f);border:1px solid var(--border-subtle, rgba(255, 255, 255, .12));border-radius:6px;color:var(--text-primary, #fff);font-family:inherit;font-size:.9rem;transition:border-color .2s ease,box-shadow .2s ease;height:40px;box-sizing:border-box}.checkout-modal .form-input:focus{outline:none;border-color:var(--primary-green, #00ff89);box-shadow:0 0 0 3px #00ff891f}.checkout-modal .form-input::placeholder{color:var(--text-muted, #8891a3)}.stripe-element{background:var(--dark-bg, #0a0b0f);border:1px solid var(--border-subtle, rgba(255, 255, 255, .12));border-radius:6px;padding:.625rem .75rem;transition:border-color .2s ease,box-shadow .2s ease;min-height:42px}.stripe-element:focus-within{border-color:var(--primary-green, #00ff89);box-shadow:0 0 0 3px #00ff891f}.stripe-element.StripeElement--invalid{border-color:var(--error-color, #ff4757)}#card-element{display:block}.checkbox-group{display:flex;align-items:flex-start}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-secondary, #b8bcc8);font-size:.8rem;line-height:1.4}.checkbox-label:hover{color:var(--text-primary, #fff)}.form-checkbox{width:16px;height:16px;min-width:16px;accent-color:var(--primary-green, #00ff89);cursor:pointer}.submit-button{width:100%;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;font-family:inherit;background:var(--primary-green, #00ff89);color:var(--dark-bg, #0a0b0f);border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s ease;box-shadow:0 4px 16px #00ff8933;position:relative;overflow:hidden;margin-top:.5rem}.submit-button:hover{background:var(--primary-green-hover, #00e67a);transform:translateY(-1px);box-shadow:0 6px 24px #00ff894d}.submit-button:active{transform:translateY(0)}.submit-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.button-spinner{width:18px;height:18px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;display:none}.submit-button.loading .button-spinner{display:block}.submit-button.loading .button-text{opacity:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-error{color:var(--error-color, #ff4757);font-size:.8rem;margin-top:.5rem;padding:.5rem .75rem;background:#ff475714;border:1px solid rgba(255,71,87,.25);border-radius:6px}.card-error-retry{color:var(--text-secondary, #b8bcc8);font-style:italic}.checkout-plan-highlight{background:var(--dark-surface-elevated, #22252d);border:1px solid var(--primary-green, #00ff89);border-radius:var(--radius-md, 8px);padding:.875rem 1rem;margin-bottom:1rem;box-shadow:0 0 12px #00ff8914}.plan-highlight-name{color:var(--primary-green, #00ff89);font-size:1.1rem;font-weight:700;margin-bottom:.5rem}.plan-highlight-features{display:flex;flex-direction:column;gap:.25rem}.plan-highlight-features span{color:var(--text-secondary, #b8bcc8);font-size:.8rem;line-height:1.4}.order-summary{margin-bottom:0}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.summary-row:not(:last-child){border-bottom:1px solid var(--border-subtle, rgba(255, 255, 255, .06))}.summary-row.total{font-weight:700;font-size:1rem;color:var(--text-primary, #fff);border-top:2px solid var(--border-subtle, rgba(255, 255, 255, .1));margin-top:.25rem;padding-top:.625rem}.summary-label{color:var(--text-secondary, #b8bcc8);font-size:.85rem}.summary-value{color:var(--text-primary, #fff);font-weight:600;font-size:.85rem}.summary-row.total .summary-value{color:var(--primary-green, #00ff89);font-size:1rem}.checkout-trial-badge{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.5rem .75rem;background:#00ff8914;border:1px solid rgba(0,255,137,.2);border-radius:8px;font-size:.75rem;font-weight:600;color:var(--primary-green, #00ff89)}.checkout-trial-badge svg{flex-shrink:0}.security-info{padding:0}.security-items{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap}.security-item{display:flex;align-items:center;gap:.35rem;color:var(--text-muted, #8891a3);font-size:.75rem}.security-icon{color:var(--primary-green, #00ff89);flex-shrink:0}.checkout-terms{text-align:center;color:var(--text-muted, #8891a3);font-size:.7rem;margin:0;line-height:1.4}.checkout-terms a{color:var(--primary-green, #00ff89);text-decoration:none}.checkout-terms a:hover{text-decoration:underline}@media (max-width: 768px){.checkout-modal{max-width:100%;border-radius:var(--radius-lg, 12px);max-height:95vh}.checkout-two-column{grid-template-columns:1fr}.checkout-right{border-left:none;border-top:1px solid var(--border-subtle, rgba(255, 255, 255, .08));order:-1}.security-items{gap:.75rem}}@media (max-width: 480px){.checkout-modal{border-radius:var(--radius-md, 8px)}}.onboarding-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop, 1040);opacity:0;transition:opacity .3s ease;pointer-events:all}.onboarding-overlay.visible{opacity:1}.onboarding-bubble{position:fixed;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:400px;box-shadow:var(--shadow-soft);z-index:var(--z-modal, 1050);opacity:0;transform:scale(.9) translateY(-10px);transition:all .3s cubic-bezier(.34,1.56,.64,1);pointer-events:all}.onboarding-bubble.visible{opacity:1;transform:scale(1) translateY(0)}.bubble-progress{font-size:.75rem;color:var(--primary-green);font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-sm)}.bubble-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.bubble-content{font-size:14px;color:var(--text-secondary);line-height:1.6;margin:0 0 20px}.bubble-buttons{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.bubble-buttons .btn{min-width:80px}.bubble-buttons .btn-text{color:var(--text-secondary)}.bubble-buttons .btn-text:hover{color:var(--text-primary);background:#ffffff0d}.bubble-arrow{position:absolute;width:0;height:0;border-style:solid}.bubble-arrow-bottom{top:-10px;left:50%;transform:translate(-50%);border-width:0 10px 10px 10px;border-color:transparent transparent var(--dark-surface-elevated) transparent}.bubble-arrow-top{bottom:-10px;left:50%;transform:translate(-50%);border-width:10px 10px 0 10px;border-color:var(--dark-surface-elevated) transparent transparent transparent}.bubble-arrow-left{right:-10px;top:50%;transform:translateY(-50%);border-width:10px 0 10px 10px;border-color:transparent transparent transparent var(--dark-surface-elevated)}.bubble-arrow-right{left:-10px;top:50%;transform:translateY(-50%);border-width:10px 10px 10px 0;border-color:transparent var(--dark-surface-elevated) transparent transparent}.onboarding-highlight{position:relative;z-index:calc(var(--z-modal-backdrop, 1040) - 1)!important;box-shadow:0 0 0 4px #6366f166!important;border-radius:8px;transition:box-shadow .3s ease}#download-agent-banner{background:linear-gradient(135deg,var(--primary-green),var(--primary-green-light));color:var(--dark-bg);padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-md);margin-bottom:var(--spacing-xl);display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 12px #00ff894d}#download-agent-banner .banner-content{flex:1}#download-agent-banner .banner-title{font-size:18px;font-weight:600;margin:0 0 4px}#download-agent-banner .banner-text{font-size:14px;opacity:.9;margin:0}#download-agent-banner .btn{background:var(--dark-bg);color:var(--primary-green);font-weight:600}#download-agent-banner .btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}@media (max-width: 768px){.onboarding-bubble{max-width:calc(100vw - 40px);left:20px!important;right:20px!important;width:auto!important}.bubble-arrow{display:none}#download-agent-banner{flex-direction:column;gap:12px;text-align:center}#download-agent-banner .btn{width:100%}}@keyframes pulse-highlight{0%,to{box-shadow:0 0 0 4px #6366f166}50%{box-shadow:0 0 0 8px #6366f199}}.onboarding-highlight{animation:pulse-highlight 2s ease-in-out infinite}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.password-input-group{position:relative;display:flex;align-items:center}.password-input-group .form-input{flex:1;padding-right:40px}.password-toggle{position:absolute;right:8px;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle:hover{color:var(--text-primary)}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:.625rem;margin-top:.75rem;padding-top:.875rem;border-top:1px solid var(--border-subtle)}.form-actions-right{display:flex;gap:.5rem}.connection-test-result{margin-top:.625rem;padding:.5rem .75rem;border-radius:6px;font-size:.75rem;line-height:1.3;display:none}.connection-test-result.success{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:var(--success-color)}.connection-test-result.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--error-color)}.connection-test-result.info{background:var(--primary-green-soft);border:1px solid rgba(0,255,137,.3);color:var(--primary-green)}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);align-items:center;justify-content:center;padding:var(--spacing-lg)}.modal-content{background:var(--dark-surface-elevated);border-radius:var(--radius-lg);max-width:520px;width:100%;max-height:90vh;box-shadow:0 20px 60px #00000080;border:1px solid var(--border-subtle);display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.125rem;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.modal-header h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--primary-green)}.modal-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.375rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-normal);width:24px;height:24px}.modal-close:hover{background:var(--dark-surface);color:var(--text-primary)}.modal-body{padding:1rem 1.125rem;overflow-y:auto;flex:1;min-height:0}.modal-description{color:var(--text-secondary);margin:0 0 .75rem;line-height:1.4;font-size:.8125rem}.form-group{margin-bottom:.75rem}.form-label{display:block;margin-bottom:.25rem;font-size:.75rem;font-weight:500;color:var(--text-primary)}.form-input{width:100%;padding:.5rem .75rem;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-size:.8125rem;transition:all var(--transition-normal)}.form-input:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 2px var(--primary-green-soft)}.form-input::placeholder{color:var(--text-muted)}.form-help{display:block;margin-top:.15rem;font-size:.6875rem;color:var(--text-muted);line-height:1.3}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column;align-items:stretch}.form-actions-right{flex-direction:column}.modal-content{max-width:100%}}@media (max-width: 480px){.modal-content{border-radius:var(--radius-md)}.modal-header,.modal-body{padding:.75rem}.form-actions{gap:.5rem;padding-top:.625rem}}.camera-grid-section{margin-bottom:var(--spacing-xl);width:100%}.camera-grid-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.camera-grid-section h2{color:var(--text-primary);font-size:1.5rem;font-weight:600}.camera-grid-actions{display:flex;gap:var(--spacing-md)}.no-cameras{padding:var(--spacing-md);text-align:center;color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--radius-lg);grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:500px;justify-self:center;margin:var(--spacing-sm) auto;position:relative}.no-cameras.compact{padding:var(--spacing-md);max-width:400px;background:transparent;border:none}.no-cameras h3{margin:var(--spacing-xs) 0;font-size:1.25rem;font-weight:600;color:var(--primary-green)}.no-cameras p{margin:0 0 var(--spacing-sm) 0;font-size:.95rem}.no-cameras .help-text{color:var(--text-muted);font-size:.9rem;margin-bottom:var(--spacing-md)}.no-cameras .status-icon{font-size:2.5rem;margin-bottom:var(--spacing-sm)}.no-cameras .status-icon img,.no-cameras img.status-icon{width:48px;height:48px;object-fit:contain}.no-cameras .status-icon.offline{color:var(--warning-color, #f0ad4e)}.no-cameras .status-icon.connecting{animation:pulse 1.5s ease-in-out infinite}.no-cameras .status-icon.reconnecting{animation:spin 2s linear infinite}.no-cameras .connection-help{text-align:left;width:100%;background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-lg);margin:var(--spacing-lg) 0;border:1px solid var(--border-subtle)}.no-cameras .connection-help p{margin:var(--spacing-md) 0 var(--spacing-sm) 0;font-weight:500;color:var(--text-primary)}.no-cameras .help-steps{text-align:left;max-width:500px;margin:var(--spacing-sm) 0 var(--spacing-lg) var(--spacing-md);list-style-position:outside;line-height:1.8;padding-left:var(--spacing-md)}.no-cameras .help-steps.user-friendly{color:var(--text-secondary);font-size:.95rem}.no-cameras .help-steps.user-friendly li{margin-bottom:var(--spacing-xs)}.no-cameras .help-subtext{margin-top:var(--spacing-lg);border-top:1px solid var(--border-subtle);padding-top:var(--spacing-lg)}.no-cameras .troubleshooting-steps{list-style-type:disc;margin:var(--spacing-sm) 0 0 var(--spacing-md);padding-left:var(--spacing-md);color:var(--text-secondary);font-size:.95rem;line-height:1.6}.no-cameras .troubleshooting-steps li{margin-bottom:var(--spacing-xs)}.no-cameras .retry-button{background:var(--primary-color, #0066cc);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:var(--spacing-md)}.no-cameras .retry-button:hover{background:var(--primary-hover, #0052a3);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.no-cameras.compact h3{font-size:1.2rem;margin:var(--spacing-sm) 0}.no-cameras .status-message{font-size:.875rem;color:var(--text-secondary);margin:0;line-height:1.4}.no-cameras .status-hint{font-size:.85rem;color:var(--text-muted);margin-top:var(--spacing-sm);font-style:italic}.no-cameras .quick-actions{display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-subtle);width:100%;justify-content:center}.no-cameras .action-hint{font-size:.9rem;color:var(--text-secondary)}.no-cameras .retry-button-small{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.no-cameras .retry-button-small:hover{background:var(--bg-tertiary);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.no-cameras .setup-button{background:var(--primary-green, #00ff89);color:var(--dark-bg);border:none;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-md);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:var(--spacing-sm);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.no-cameras .setup-button:hover{background:var(--primary-green-hover, #00e67a);transform:translateY(-1px);box-shadow:0 4px 12px #00ff894d}.no-cameras .retry-button:active{transform:translateY(0)}.no-cameras .welcome-logo{width:80px;height:80px;margin-bottom:var(--spacing-sm);opacity:.95}.no-cameras code{display:none}.no-cameras.first-time{background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);border:2px solid var(--primary-color);padding:var(--spacing-md)}.no-cameras .status-icon.setup{color:var(--primary-color);animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.no-cameras .setup-steps{text-align:left;margin:var(--spacing-xs) auto;max-width:320px}.no-cameras .setup-steps .step{padding:4px var(--spacing-sm);margin:2px 0;background:var(--bg-primary);border-radius:var(--radius-sm);border-left:3px solid var(--primary-color);font-size:.85rem;color:var(--text-primary);line-height:1.2;white-space:nowrap}.no-cameras .status-connected{color:var(--success-color);font-weight:500;margin:var(--spacing-sm) 0;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.no-cameras .action-buttons{display:flex;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-lg);flex-wrap:wrap}.no-cameras .action-buttons button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:500;transition:all .2s ease;cursor:pointer}.no-cameras .action-buttons .primary{background:var(--primary-color);color:#fff;border:none}.no-cameras .action-buttons .primary:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #0066cc4d}.no-cameras .action-buttons .secondary{background:transparent;color:var(--primary-color);border:1px solid var(--primary-color)}.no-cameras .action-buttons .secondary:hover{background:var(--primary-color);color:#fff}.no-cameras .action-steps{text-align:left;margin:var(--spacing-md) auto;max-width:350px}.no-cameras .action-steps .action-step{padding:var(--spacing-xs);margin:var(--spacing-xs) 0;font-size:.9rem;color:var(--text-secondary);display:flex;align-items:center}.no-cameras .status-icon.offline{animation:shake 2s ease-in-out infinite}.no-cameras .help-list{list-style:none;padding:0;margin:var(--spacing-md) 0;text-align:left;max-width:300px;margin-left:auto;margin-right:auto;color:var(--text-secondary);font-size:.9rem}.no-cameras .help-list li{padding:var(--spacing-xs) 0;line-height:1.5}.no-cameras .refresh-button{background:var(--primary-color, #0066cc);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:var(--spacing-md);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.no-cameras .refresh-button:hover{background:var(--primary-hover, #0052a3);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.no-cameras .refresh-button:active{transform:translateY(0)}.camera-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(.75rem,1.5vw,1.5rem);width:100%;padding:0}@media (min-width: 769px) and (max-width: 1100px){.camera-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}}.camera-grid:has(.no-cameras:only-child){grid-template-columns:1fr;place-items:center}.camera-grid.empty-state{grid-template-columns:1fr;place-items:center;justify-content:center}.auth-message{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:var(--spacing-lg);background:#ff98000d;border:2px dashed var(--warning-color);border-radius:var(--radius-md)}.auth-message .lock-icon{font-size:3rem;margin-bottom:var(--spacing-md);opacity:.7}.auth-message .auth-text{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.auth-message .auth-hint{font-size:.9rem;color:var(--text-secondary);text-align:center}.control-authenticate{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--warning-color);color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease}.control-authenticate:hover{background:var(--warning-orange);transform:translateY(-1px);box-shadow:0 4px 8px #ff98004d}.control-authenticate:active{transform:translateY(0)}.control-authenticate .auth-icon{font-size:1.2rem}.control-authenticate .auth-label{font-weight:500}#cameraAuthModal .modal-content{max-width:450px;width:90%}#cameraAuthModal .auth-camera-info{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}#cameraAuthModal .auth-camera-info p{margin:0;color:var(--text-secondary);font-size:.9rem}#cameraAuthModal .camera-name{margin-top:var(--spacing-sm);font-size:1.1rem;font-weight:500;color:var(--text-primary)}#cameraAuthModal .auth-error{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--danger-bg);color:var(--danger);border-radius:var(--radius-md);font-size:.9rem}#cameraAuthModal .checkbox-group label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:.95rem;color:var(--text-secondary)}#cameraAuthModal .checkbox-group input[type=checkbox]{cursor:pointer}.camera-indicators{display:flex;gap:var(--spacing-sm);align-items:center}.connection-indicator{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);transition:background-color .3s ease,box-shadow .3s ease}.connection-indicator[data-connected=true]{background:var(--success-green);box-shadow:0 0 4px var(--success-green)}.connection-indicator[data-connected=false]{background:var(--danger-red);box-shadow:0 0 4px var(--danger-red)}.camera-details{color:var(--text-muted);font-size:.875rem}.camera-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);border-top:1px solid var(--border-subtle);font-size:.875rem;color:var(--text-secondary)}.camera-location{font-weight:500}.camera-activity{font-size:.75rem}.camera-status{width:8px;height:8px;border-radius:50%;background:var(--success-color)}.camera-status.offline{background:var(--error-color)}.camera-status-indicator{width:8px;height:8px;border-radius:50%;margin-left:var(--spacing-sm)}.camera-status-indicator.online{background:var(--success-color);box-shadow:0 0 4px var(--success-color)}.camera-status-indicator.offline{background:var(--text-muted)}.preview-controls{margin-bottom:1.5rem}.preview-container{position:relative;min-height:300px;background:var(--dark-surface-elevated);border-radius:12px;overflow:hidden;border:2px dashed var(--border-subtle);display:flex;align-items:center;justify-content:center}.preview-placeholder{display:flex;align-items:center;justify-content:center;height:300px;text-align:center;color:var(--text-muted)}.preview-placeholder-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.preview-icon{width:64px;height:64px;color:var(--text-secondary)}.preview-placeholder p{margin:0;font-size:1rem;font-weight:500;color:var(--text-muted)}#cameraPreviewImg{width:100%;height:auto;max-height:400px;object-fit:contain;display:block}.camera-selection-card{grid-column:span 2;margin-bottom:var(--spacing-lg)}.camera-selection{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-md);min-height:120px;display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:250px;overflow-y:auto}.camera-selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);max-height:300px;overflow-y:auto;padding:var(--spacing-sm)}.camera-selection-item{display:flex;align-items:center;padding:var(--spacing-md);background:var(--dark-surface-elevated);border:2px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.camera-selection-item:hover{border-color:var(--primary-green);box-shadow:0 0 15px #00ff891a;transform:translateY(-1px)}.camera-selection-item.selected{border-color:var(--primary-green);background:var(--primary-green-soft);box-shadow:0 0 20px #00ff8933}.camera-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal)}.camera-item:hover{background:var(--dark-surface-elevated)}.camera-checkbox{margin-right:var(--spacing-md);width:18px;height:18px;border:2px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--dark-surface);cursor:pointer;transition:all var(--transition-normal)}.camera-controls.compact{position:relative;padding:15px;display:flex;align-items:flex-start;gap:8px}.camera-toggle{position:relative;width:40px;height:20px;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:10px;cursor:pointer;transition:all var(--transition-normal)}.camera-toggle.active{background:var(--primary-green)}.camera-toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:all var(--transition-normal)}.camera-toggle.active:after{transform:translate(20px)}.selected-cameras-count{display:flex;align-items:center;gap:var(--spacing-sm)}.cameras-count{font-size:.875rem;color:var(--primary-green);font-weight:500}.camera-limit-info{margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--primary-green-soft);border:1px solid var(--primary-green);border-radius:var(--radius-md);font-size:.875rem;color:var(--text-primary)}@media (max-width: 1200px){.camera-preview-card,.camera-selection-card{grid-column:span 1}}@media (max-width: 480px){.camera-grid{grid-template-columns:1fr}.preview-container{min-height:250px}.preview-placeholder{height:250px}.camera-selection-grid{grid-template-columns:1fr}}:root{--grid-card-min-width: 280px;--grid-gap-normal: 16px}.gallery-content{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;position:relative;padding-bottom:var(--spacing-sm)}.gallery-controls{flex-shrink:0;display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-left:var(--spacing-xl);padding-right:var(--spacing-xl);position:sticky;top:0;background:var(--bg-primary, #0a0b0f);z-index:var(--z-sticky, 1020);padding-top:var(--spacing-md);padding-bottom:var(--spacing-sm)}.gallery-controls-row{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.gallery-controls .btn,.gallery-controls button{min-height:unset;font-size:.75rem;padding:.25rem .625rem;line-height:1.3}.gallery-controls.compact{flex-shrink:0;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:0 var(--spacing-xs);align-items:center}.search-box{width:100%;min-width:300px;position:relative;display:flex;align-items:center;gap:var(--spacing-xs)}.search-box.compact{width:100%;max-width:400px}.gallery-controls .search-box input,#gallery-view .search-box input{width:100%;padding:.375rem .75rem!important;font-size:.8125rem!important;line-height:1.4!important;min-height:unset!important;height:auto!important}.search-clear-btn{position:absolute;right:50px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--text-secondary);font-size:24px;width:32px;height:32px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity var(--transition-fast)}.search-clear-btn:hover{opacity:1;color:var(--text-primary)}@media (max-width: 768px){.search-clear-btn{width:44px;height:44px;font-size:28px}}.search-help-btn{background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.search-help-btn:hover{background:var(--color-surface-elevated);color:var(--color-text-primary)}.search-help-btn svg{width:16px;height:16px}.search-suggestions{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--dark-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000004d;max-height:400px;overflow-y:auto;z-index:var(--z-gallery-dropdown);animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.suggestion-category{border-bottom:1px solid var(--border-subtle);padding:var(--spacing-sm) 0}.suggestion-category:last-child{border-bottom:none}.suggestion-category-label{padding:var(--spacing-xs) var(--spacing-md);font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.suggestion-items{display:flex;flex-direction:column}.suggestion-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background var(--transition-fast);font-size:.875rem}.suggestion-item:hover,.suggestion-item.active{background:var(--dark-surface)}.suggestion-item.active{background:#4caf501a;border-left:3px solid var(--primary-green)}.suggestion-text{flex:1;color:var(--text-primary);word-break:break-word}.suggestion-text mark{background:#4caf504d;color:var(--primary-green);font-weight:600;border-radius:2px;padding:0 2px}.suggestion-desc{margin-left:var(--spacing-md);font-size:.75rem;color:var(--text-muted);white-space:nowrap}.suggestion-action{padding:var(--spacing-xs) var(--spacing-md);display:flex;justify-content:flex-end}.clear-history-btn{background:transparent;border:1px solid var(--border-subtle);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;cursor:pointer;transition:all var(--transition-fast)}.clear-history-btn:hover{background:var(--dark-surface);color:var(--text-primary);border-color:var(--primary-green)}@media (max-width: 768px){.search-suggestions{max-height:50vh;font-size:1rem}.suggestion-item{padding:var(--spacing-md);min-height:44px}.suggestion-category-label{font-size:.8rem;padding:var(--spacing-sm) var(--spacing-md)}.suggestion-text{font-size:.95rem}.suggestion-desc{font-size:.8rem}}.empty-message{padding:var(--spacing-xl) var(--spacing-lg);text-align:center;color:var(--text-secondary);background:var(--bg-secondary);border-radius:var(--radius-lg);margin:var(--spacing-lg) auto;max-width:600px}.empty-message p{margin:0 0 var(--spacing-md) 0;font-size:1.1rem}.empty-message .help-text{color:var(--text-muted);font-size:.95rem;margin:0}.loading-message{padding:var(--spacing-xl);text-align:center;color:var(--text-muted);font-size:1rem}.filter-controls{display:flex;flex-direction:column;gap:var(--spacing-md);position:relative}.filter-controls.compact{display:flex;flex-direction:column;gap:var(--spacing-sm)}.filter-pills-container{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);align-items:center}.filter-pills-group{display:flex;flex-wrap:wrap;gap:.375rem}.gallery-controls-row>*:not(:last-child){padding-right:var(--spacing-sm);border-right:1px solid var(--border-subtle);margin-right:var(--spacing-sm)}.filter-pill{background:var(--dark-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:.25rem .625rem;border-radius:var(--radius-full);font-size:.75rem;line-height:1.3;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;display:inline-flex;align-items:center;gap:var(--spacing-xs);position:relative;min-height:unset}.filter-pill:hover{background:var(--dark-surface-elevated);color:var(--text-primary);border-color:var(--primary-green-soft)}.filter-pill.active{background:var(--primary-green);color:#fff;border-color:var(--primary-green);font-weight:600}.filter-pill.active:hover{background:var(--primary-green-light);border-color:var(--primary-green-light)}.filter-pill[data-filter-type=camera]:before{content:"📷";font-size:.9em}.filter-status{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-md);background:var(--dark-surface-elevated);border:1px solid var(--primary-green-soft);border-radius:var(--radius-md);font-size:.875rem}.filter-count{color:var(--primary-green);font-weight:600}.clear-filters-btn{background:transparent;border:none;color:var(--text-secondary);font-size:.875rem;cursor:pointer;text-decoration:underline;transition:color var(--transition-fast)}.clear-filters-btn:hover{color:var(--primary-green)}.filter-pills-container.has-scroll-left:before,.filter-pills-container.has-scroll-right:after{content:"";position:absolute;top:0;bottom:0;width:20px;pointer-events:none;z-index:var(--z-timeline-marker)}.filter-pills-container.has-scroll-left:before{left:0;background:linear-gradient(to right,var(--dark-bg),transparent)}.filter-pills-container.has-scroll-right:after{right:0;background:linear-gradient(to left,var(--dark-bg),transparent)}@media (max-width: 768px){.filter-controls{position:relative;padding:0 4px}.filter-pills-container{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--spacing-xs);flex-wrap:nowrap}.filter-pills-container::-webkit-scrollbar{display:none}.filter-pills-group{flex-wrap:nowrap}.filter-pill{flex-shrink:0}.filter-pills-group.date-pills .filter-pill{font-size:.6875rem;padding:.25rem .4375rem}.filter-pills-group.date-pills{gap:.25rem}.filter-pills-container.has-scroll-left:before,.filter-pills-container.has-scroll-right:after{width:30px}}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--grid-card-min-width),1fr));grid-template-rows:none;grid-auto-rows:auto;gap:var(--grid-gap-normal);align-items:start;overflow:visible;padding-top:30px;width:100%}@media (max-width: 320px){.gallery-grid{grid-template-columns:1fr}}#video-gallery.gallery-grid{flex:none;overflow:visible;padding:0 var(--spacing-xl) var(--spacing-xl);margin:0;box-sizing:border-box;max-width:100%}.virtual-item{position:relative;width:100%}.virtualized-spacer{width:100%;pointer-events:none;visibility:hidden}.virtualized-grid-spacer{grid-column:1 / -1;width:100%;pointer-events:none;visibility:hidden;background:transparent}.virtualized-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--grid-card-min-width),1fr));gap:var(--grid-gap-normal);width:100%;position:relative}.gallery-grid.virtualizing .video-card{transition:transform .2s ease-out,opacity .2s ease-out}.gallery-grid.updating{min-height:600px;pointer-events:none}.gallery-grid.updating .virtualized-row{opacity:1;transform:translateZ(0)}.virtualized-spacer{visibility:hidden}.video-item{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--spacing-xl);transition:all var(--transition-normal);display:flex;flex-direction:column}.video-item:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.video-item .card-header{margin-bottom:var(--spacing-lg)}.video-item .card-header h3{color:var(--primary-green);font-size:1.25rem;font-weight:600;margin:0}.video-item .card-content{display:flex;flex-direction:column;flex:1}.video-timestamp{color:var(--text-secondary);font-size:.875rem;margin-bottom:var(--spacing-md)}.video-player-container{position:relative;width:100%;background:var(--dark-surface);border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--spacing-lg);box-shadow:0 2px 8px #0003}.video-item video{width:100%;height:auto;min-height:180px;background:var(--dark-surface);border-radius:var(--radius-md)}.video-card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);overflow:hidden;transition:all var(--transition-normal);cursor:pointer;width:100%;position:relative;animation:fadeInScale .3s ease-out}.video-card:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft)}.gallery-grid .video-card{width:100%;min-width:0}.video-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-subtle)}.video-name{font-size:.7rem;font-weight:600;color:var(--primary-green);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.video-top-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transform:scale(.9);transition:all var(--transition-fast);z-index:var(--z-floating-label)}.video-card:hover .video-top-actions{opacity:1;transform:scale(1)}.top-action-btn{width:28px;height:28px;background:var(--dark-surface-elevated);border:1px solid var(--border-default);border-radius:6px;color:var(--text-secondary);font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);padding:0}.top-action-btn:hover{background:var(--dark-surface-hover);color:var(--text-primary);transform:scale(1.05)}.top-action-btn:active{transform:scale(.95)}.top-action-btn.download-btn{margin-top:0}.top-action-btn.download-btn:hover{background:rgba(var(--primary-green-rgb, 134, 239, 172),.15);border-color:var(--primary-green);color:var(--primary-green)}.top-action-btn.delete-btn:hover{background:#f4433626;border-color:#f4433680;color:var(--error-color)}.top-action-btn:after{position:absolute;top:100%;right:0;background:var(--dark-surface-elevated);color:var(--text-primary);padding:4px 8px;border-radius:4px;white-space:nowrap;font-size:.7rem;font-weight:400;opacity:0;pointer-events:none;transition:opacity .2s;z-index:var(--z-tooltip, 1070);margin-top:4px;box-shadow:0 2px 6px #0003;visibility:hidden}.top-action-btn.download-btn:after{content:"Download"}.top-action-btn.delete-btn:after{content:"Delete"}.top-action-btn:hover:after{opacity:1;visibility:visible}@media (hover: none),(max-width: 768px){.video-top-actions{opacity:1;transform:scale(1)}}.undo-notification{position:fixed;bottom:-60px;left:50%;transform:translate(-50%);background:var(--dark-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-lg);box-shadow:0 4px 12px #0000004d;z-index:var(--z-critical-modal);transition:all .3s ease}.undo-notification.show{bottom:var(--spacing-xl)}.undo-notification.fade-out{opacity:0;transform:translate(-50%) translateY(20px)}.undo-message{color:var(--text-primary);font-size:.9rem;white-space:nowrap;max-width:300px;overflow:hidden;text-overflow:ellipsis}.undo-btn{background:var(--primary-green);color:#fff;border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase;letter-spacing:.5px}.undo-btn:hover{background:var(--primary-green-light);transform:scale(1.05)}.undo-btn:active{transform:scale(.98)}@media (max-width: 768px){.undo-notification{left:var(--spacing-md);right:var(--spacing-md);transform:none;bottom:-80px}.undo-notification.show{bottom:calc(var(--spacing-md) + env(safe-area-inset-bottom))}.undo-message{flex:1;max-width:none}}.video-preview{position:relative;height:0;padding-bottom:56.25%;background:var(--dark-bg);overflow:hidden}.video-preview video::-webkit-media-controls-overlay-play-button,.video-preview video::-webkit-media-controls-start-playback-button,.video-preview video::-webkit-media-controls{display:none!important;-webkit-appearance:none!important}.video-preview video[poster]{background:transparent}.video-preview video::cue{display:none!important}.preview-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;padding:0;transition:opacity var(--transition-normal)}.preview-image.is-placeholder{object-fit:contain;padding:20px}.preview-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:var(--z-timeline-marker);opacity:0;pointer-events:none}.video-preview.preview-active .preview-image{opacity:0;transition-delay:.3s}.preview-play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;background:#000000b3;border:2px solid rgba(255,255,255,.8);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;z-index:var(--z-session-header);opacity:.6;transition:opacity .2s ease;pointer-events:none}.video-preview:hover .preview-play-icon{opacity:0;transform:translate(-50%,-50%)}.preview-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:var(--z-filter-badge);transition:opacity .3s ease}.preview-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--primary-green);border-radius:50%;animation:spin 1s linear infinite}.preview-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff1a;z-index:var(--z-card-badge);opacity:0;transition:opacity .3s ease}.video-preview.preview-active .preview-progress{opacity:1}.preview-progress-bar{height:100%;background:var(--primary-green);width:0;transition:width .1s linear;box-shadow:0 0 4px #4caf5099}.video-preview{transition:transform var(--transition-normal)}.video-card:hover .video-preview{transform:scale(1.02)}@media (hover: none),(max-width: 768px){.preview-play-icon,.preview-loading,.preview-progress,.preview-video{display:none!important}.video-preview.preview-active .preview-image{opacity:1!important}.video-card:hover .video-preview{transform:none}}.no-video-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--error-color-soft);color:#fff;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-align:center;box-shadow:0 2px 8px #ff47574d}.video-preview .preview-overlay{position:absolute;top:0;left:0;right:0;background:linear-gradient(to bottom,rgba(0,0,0,.7) 0%,transparent 100%);padding:var(--spacing-sm) var(--spacing-md);pointer-events:none}.video-preview .preview-stats{display:flex;gap:var(--spacing-md);color:#fff;font-size:.65rem;line-height:1.2}.video-preview .preview-stats span{color:#fff;opacity:1;display:inline-block}.video-preview .preview-stats span:not(:first-child):before{content:" • ";margin:0 4px}.video-not-available{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:.875rem;text-align:center;padding:var(--spacing-md)}.session-group{background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);padding:var(--spacing-sm);margin-bottom:var(--spacing-lg);transition:all var(--transition-normal);display:flex;flex-direction:column;flex:0 1 auto}.session-group:hover{background:#ffffff08;border-color:#ffffff14}.session-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);color:var(--text-secondary);font-size:.7rem;border-bottom:1px solid rgba(255,255,255,.05)}.session-header h3{margin:0;font-size:.8rem;font-weight:600;color:var(--text-primary)}.session-time{color:var(--text-muted);font-size:.65rem}.session-count{margin-left:auto;background:var(--dark-surface-elevated);padding:.2rem .6rem;border-radius:var(--radius-sm);font-size:.65rem;color:var(--text-secondary)}.session-videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(var(--session-card-min-width),100%),1fr));gap:var(--spacing-lg);max-width:100%;padding:var(--spacing-sm) 0}.session-videos-list{width:250px;max-height:70vh;overflow-y:auto;padding:1rem;background:#0000004d;border-radius:8px}.session-video-items{display:flex;flex-direction:column}.session-video-item{display:flex;align-items:center;justify-content:space-between;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-video-item:hover{background:#ffffff0d}.session-video-item.active{background:#4caf5033;border-color:var(--primary-green)}.video-card.session-video{position:relative;overflow:visible}.video-card.session-video:before{content:none}.video-card.session-video:after{content:"";position:absolute;top:10px;right:10px;width:6px;height:6px;background:var(--primary-green);border-radius:50%;opacity:.6;box-shadow:0 0 4px #00ff894d}.session-videos .video-card{margin:0;width:100%}.session-videos .video-preview{height:120px}.video-detection-wrapper{height:2.5rem;display:flex;align-items:center;flex-shrink:0}.detection-container{padding:0;text-align:left;display:flex;align-items:center;flex-wrap:wrap}.detection-hover-wrapper{position:relative;display:block;width:100%;padding:var(--spacing-xs) var(--spacing-md) var(--spacing-xs);margin:0;line-height:1;height:1.75rem;flex-shrink:0}.detections-badge{background:rgba(var(--primary-green-rgb, 134, 239, 172),.1);color:var(--primary-green);padding:2px 6px;border-radius:12px;font-size:.75rem;font-weight:500;cursor:help;display:inline-flex;align-items:center;gap:4px;transition:background .2s;margin:0;line-height:1}.detections-badge:hover{background:rgba(var(--primary-green-rgb, 134, 239, 172),.2)}.detections-popover{position:absolute;bottom:100%;left:0;background:var(--dark-surface-elevated);border:1px solid var(--border-default);border-radius:6px;padding:8px;min-width:150px;max-width:280px;opacity:0;visibility:hidden;transform:translateY(4px);transition:all .2s;z-index:var(--z-popover, 1060);margin-bottom:6px;box-shadow:0 2px 8px #0000004d;pointer-events:none}.detections-popover:after{content:"";position:absolute;top:100%;left:24px;border:8px solid transparent;border-top-color:var(--dark-surface-elevated)}.detections-popover:before{content:"";position:absolute;top:100%;left:24px;border:8px solid transparent;border-top-color:var(--border-default);margin-top:1px}.detection-hover-wrapper:hover .detections-popover{opacity:1;visibility:visible;transform:translateY(0)}.detections-popover .tags-container{display:flex;flex-wrap:wrap;gap:4px}.detections-popover .detection-tag{display:inline-block;background:var(--dark-surface);padding:3px 6px;border-radius:3px;font-size:.7rem;color:var(--text-primary);border:1px solid var(--border-subtle);cursor:default;-webkit-user-select:none;user-select:none;pointer-events:none}.detections-popover .visual-tag{border-left:2px solid var(--primary-blue);border-right:none;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.detections-popover .audio-tag{border-left:2px solid var(--primary-yellow);border-right:none;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}@media (hover: none),(max-width: 768px){.detections-badge{cursor:pointer}.detection-hover-wrapper.active .detections-popover{opacity:1;visibility:visible;transform:translateY(0)}}.detection-tag.more-indicator:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:8px 12px;background:var(--dark-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:.65rem;line-height:1.3;white-space:pre-wrap;max-width:200px;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:var(--z-gallery-tooltip)}.show-more-btn{grid-column:1 / -1;margin:var(--spacing-lg) auto;padding:var(--spacing-md) var(--spacing-xl);background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:all var(--transition-normal);justify-self:center}.show-more-btn:hover{background:var(--dark-surface);border-color:var(--primary-green)}@media (max-width: 768px){.gallery-grid,.virtualized-row{gap:12px}}@media (min-width: 1920px){.gallery-grid,.virtualized-row{gap:20px}}@media (max-width: 768px){.gallery-controls{flex-direction:column;padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.gallery-controls.compact{flex-direction:column;gap:var(--spacing-sm)}.search-box{min-width:auto;max-width:100%}.filter-controls{width:100%}.gallery-controls-row{flex-direction:column;align-items:stretch;gap:var(--spacing-xs);width:100%}.gallery-controls-row>*:not(:last-child){border-right:none;padding-right:0;margin-right:0}.filter-pills-group.date-pills{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:var(--spacing-xs);max-width:100%}.filter-pills-group.date-pills::-webkit-scrollbar{display:none}.filter-pills-group.date-pills.has-scroll-right{-webkit-mask-image:linear-gradient(to right,black calc(100% - 28px),transparent);mask-image:linear-gradient(to right,black calc(100% - 28px),transparent)}.filter-pills-group.date-pills.has-scroll-left{-webkit-mask-image:linear-gradient(to left,black calc(100% - 28px),transparent);mask-image:linear-gradient(to left,black calc(100% - 28px),transparent)}.filter-pills-group.date-pills.has-scroll-left.has-scroll-right{-webkit-mask-image:linear-gradient(to right,transparent,black 28px,black calc(100% - 28px),transparent);mask-image:linear-gradient(to right,transparent,black 28px,black calc(100% - 28px),transparent)}.selection-controls{width:100%;justify-content:flex-start}.view-controls-wrapper{width:100%}.view-toggle-container{flex:1}.session-videos{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.view-toggle-container{display:flex;width:100%}.view-toggle-btn{flex:1;min-height:44px;height:44px;padding:var(--spacing-sm) var(--spacing-md)}.video-card{display:grid;grid-template-columns:1fr auto}.video-header{order:1}.video-top-actions{order:2;position:static;opacity:1;transform:none;align-self:center;padding:var(--spacing-xs) var(--spacing-sm) var(--spacing-xs) 0;gap:var(--spacing-xs)}.video-preview{order:3;grid-column:1 / -1}.detection-hover-wrapper{order:4;grid-column:1 / -1}.top-action-btn{width:34px;height:34px;font-size:14px}}.video-card.skeleton{position:relative;overflow:hidden}.video-card.skeleton:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.05) 50%,transparent 100%);animation:skeleton-loading 1.5s ease-in-out infinite}@keyframes skeleton-loading{to{left:100%}}.search-help-modal{max-width:900px;width:90vw}.search-help-content{font-size:.875rem}.search-help-columns{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl)}@media (max-width: 768px){.search-help-columns{grid-template-columns:1fr}}.search-help-section{margin-bottom:var(--spacing-lg)}.search-help-section:last-child{margin-bottom:0}.search-help-section h3{color:var(--color-primary);font-size:1rem;font-weight:600;margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px}.search-help-section ul{list-style:none;padding:0;margin:0}.search-help-section li{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;border-bottom:1px solid var(--color-border-subtle)}.search-help-section li:last-child{border-bottom:none}.search-label{color:var(--color-text-secondary);font-size:.8rem;min-width:100px;flex-shrink:0}.search-help-section code{background:var(--color-surface);color:var(--color-primary);padding:2px 8px;border-radius:4px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:.8rem;font-weight:500;border:1px solid var(--color-primary-dim);white-space:nowrap}.search-desc{color:var(--color-text-muted);font-size:.75rem;flex:1;margin-left:auto;text-align:right}.search-examples li{justify-content:space-between}.search-examples code{flex:1;max-width:60%}.search-examples .search-desc{flex:0 0 auto;margin-left:var(--spacing-sm)}.view-controls-wrapper{display:flex;gap:var(--spacing-md);align-items:center}.view-toggle-container{display:flex;gap:0;background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.view-toggle-btn{background:transparent;border:none;color:var(--text-secondary);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;position:relative}.view-toggle-btn:not(:last-child){border-right:1px solid var(--border-subtle)}.view-toggle-btn:hover{background:var(--dark-surface-elevated);color:var(--text-primary)}.view-toggle-btn.active{background:var(--primary-green);color:#fff}.view-toggle-btn svg{width:18px;height:18px}.timeline-container{width:100%;max-width:1800px;margin:0;padding:var(--spacing-lg);padding-left:0}.timeline-day{margin-bottom:var(--spacing-xl);margin-left:var(--spacing-lg);border-left:3px solid var(--border-subtle);padding-left:var(--spacing-lg);position:relative}.timeline-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-subtle)}.timeline-day-header h3{margin:0;color:var(--text-primary);font-size:1.1rem;font-weight:600}.timeline-day-header .video-count{color:var(--text-secondary);font-size:.875rem;background:var(--dark-surface-elevated);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);white-space:nowrap;flex-shrink:0}.timeline-hours{display:flex;flex-direction:column;gap:var(--spacing-lg);padding-left:80px;position:relative}.timeline-hour{display:flex;gap:var(--spacing-lg);position:relative}.timeline-marker{position:absolute;left:0;display:flex;align-items:center;gap:var(--spacing-sm)}.timeline-time{position:absolute;left:-70px;width:60px;text-align:right;color:var(--text-secondary);font-size:.875rem;font-weight:500;white-space:nowrap;overflow:visible}.timeline-dot{position:absolute;left:-6px;width:12px;height:12px;background:var(--primary-green);border:2px solid var(--dark-bg);border-radius:50%;z-index:var(--z-timeline-marker)}.timeline-line{position:absolute;left:0;top:12px;width:3px;height:calc(100% + var(--spacing-lg));background:var(--border-subtle);z-index:var(--z-video-overlay)}.timeline-videos{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(var(--timeline-card-min-width),100%),1fr));gap:var(--spacing-md);margin-left:0;max-width:calc(100% - 20px)}.timeline-video-card{background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-md);transition:all var(--transition-fast);position:relative}.timeline-video-card:hover{background:var(--dark-surface-elevated);border-color:var(--primary-green);transform:translate(4px)}.timeline-actions{display:flex;gap:4px;margin-left:auto;padding-left:var(--spacing-sm)}.timeline-action-btn{width:24px;height:24px;background:var(--dark-surface-elevated);border:1px solid var(--border-default);border-radius:4px;color:var(--text-secondary);font-size:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);padding:0}.timeline-action-btn:hover{background:var(--dark-surface-hover);color:var(--text-primary)}.timeline-action-btn.download-btn:hover{background:rgba(var(--primary-green-rgb, 134, 239, 172),.15);border-color:var(--primary-green);color:var(--primary-green)}.timeline-action-btn.delete-btn:hover{background:#f4433626;border-color:#f4433680;color:var(--error-color)}.timeline-video-content{display:flex;gap:var(--spacing-md);align-items:center}.timeline-thumbnail-wrapper{position:relative;width:80px;height:60px;flex-shrink:0;border-radius:var(--radius-sm);overflow:hidden;background:var(--dark-surface-deeper)}.timeline-thumbnail{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity var(--transition-normal)}.timeline-thumbnail[src]:not([src=""]){opacity:1}.timeline-play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:28px;height:28px;background:#0009;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:.8;transition:all var(--transition-fast);pointer-events:none}.timeline-video-card:hover .timeline-play-overlay{opacity:1;background:#000c}.timeline-play-overlay svg{width:16px;height:16px;margin-left:2px}.timeline-video-details{flex:1;min-width:0}.timeline-video-time{color:var(--text-secondary);font-size:.875rem;font-weight:500;min-width:100px}.timeline-video-info{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.timeline-video-camera{color:var(--text-primary);font-weight:500;font-size:.9rem}.timeline-video-duration{color:var(--text-secondary);font-size:.8rem}.timeline-video-tags{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.timeline-tag{background:var(--dark-surface-elevated);color:var(--text-secondary);padding:2px 8px;border-radius:var(--radius-md);font-size:.75rem;border:1px solid var(--border-subtle)}@media (max-width: 768px){.timeline-container{padding:var(--spacing-sm)}.timeline-marker{position:relative;left:0}.timeline-time{position:relative;left:0;width:auto;text-align:left;margin-bottom:var(--spacing-sm)}.timeline-dot{display:none}.timeline-day{border-left:none;padding-left:0;margin-left:0}.timeline-hours{padding-left:0}.timeline-videos{margin-left:0;max-width:100%}.timeline-hour{flex-direction:column}.timeline-day-header h3{font-size:.95rem;min-width:0}}@media (max-width: 768px){.view-controls-wrapper{flex-direction:column;width:100%;gap:var(--spacing-sm)}.view-toggle-container{width:100%}}body.is-mobile .video-card{transition:transform .2s ease-out;cursor:pointer}body.is-mobile .video-card.swiping{transition:none}.swipe-delete-container{position:absolute;top:0;right:0;bottom:0;width:150px;opacity:0;transition:opacity .2s ease;pointer-events:none;z-index:var(--z-video-overlay)}.swipe-delete-background{position:absolute;top:0;right:0;bottom:0;width:100%;background:linear-gradient(to left,var(--error-color),var(--danger-red-stop));display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md);color:#fff;font-weight:600;border-radius:0 var(--radius-xl) var(--radius-xl) 0}.swipe-delete-container.will-delete .swipe-delete-background{background:linear-gradient(to left,var(--danger-red-vivid),var(--error-color));animation:pulse-scale .3s ease}@keyframes pulse-scale{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.swipe-delete-icon{font-size:1.2rem}.swipe-delete-text{font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}body.is-mobile .video-card:before,body.is-mobile .video-card:after{content:"";position:absolute;top:0;bottom:0;width:80px;opacity:0;transition:opacity .2s ease;pointer-events:none;z-index:var(--z-card-badge)}body.is-mobile .video-card:before{left:0;background:linear-gradient(to right,rgba(76,175,80,.3),transparent)}body.is-mobile .video-card:after{right:0;background:linear-gradient(to left,rgba(244,67,54,.3),transparent)}body.is-mobile .video-card.swipe-left:after{opacity:1}body.is-mobile .video-card.swipe-right:before{opacity:1}@media (max-width: 768px){.gallery-grid{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.gallery-content{padding-top:env(safe-area-inset-top)}.gallery-grid{padding-bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom))}.gallery-content,.gallery-grid{overflow-x:hidden}.video-card{will-change:transform;transform:translateZ(0);backface-visibility:hidden}.video-card.skeleton{min-height:280px}.swipe-delete-container{width:100px}.swipe-delete-background{padding:var(--spacing-sm)}.swipe-delete-icon{font-size:1rem}.swipe-delete-text{display:none}.timeline-container{padding:var(--spacing-sm)}@supports (position: sticky){.gallery-controls{position:sticky;top:0;background:var(--dark-bg);z-index:var(--z-modal-elements);padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-subtle)}}}.refresh-indicator{position:fixed;top:80px;right:20px;background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--border-radius);padding:8px 12px;display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--text-secondary);opacity:0;transform:translate(100%);transition:all .3s cubic-bezier(.4,0,.2,1);z-index:var(--z-date-picker);box-shadow:0 2px 8px #0003}.refresh-indicator.visible{opacity:1;transform:translate(0)}.refresh-spinner{width:14px;height:14px;border:2px solid var(--border-subtle);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.new-videos-notification{background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-radius:var(--border-radius);margin:var(--spacing-md);padding:0;box-shadow:0 4px 12px #1a73e84d;opacity:0;transform:translateY(-20px);transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.new-videos-notification.visible{opacity:1;transform:translateY(0)}.notification-content{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);color:#fff}.notification-icon{font-size:1.5rem;animation:pulse-fade 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-fade{0%,to{opacity:1}50%{opacity:.5}}.notification-text{flex:1;font-weight:500}.notification-action{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:6px 16px;border-radius:var(--border-radius-sm);cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.notification-action:hover{background:#ffffff4d;transform:translateY(-1px)}.notification-close{background:transparent;color:#fff;border:none;font-size:1.5rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:var(--border-radius-sm);transition:background .2s}.notification-close:hover{background:#fff3}.notification-timer{height:3px;background:#fff3;position:relative}.timer-bar{height:100%;background:#fffc;transform-origin:left}@keyframes timer-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.video-card.new-video{position:relative;animation:highlight-pulse 1s ease-in-out 3;animation-fill-mode:both}.video-card.new-video:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(45deg,var(--primary),var(--success));border-radius:var(--border-radius);z-index:var(--z-base);opacity:.8;animation:glow 2s ease-in-out infinite}.video-card.new-video:after{content:"NEW";position:absolute;top:8px;left:75%;transform:translate(-50%);background:var(--success);color:#fff;padding:4px 8px;border-radius:var(--border-radius-sm);font-size:.75rem;font-weight:600;z-index:var(--z-modal-elements);animation:badge-bounce .5s ease-out}@keyframes highlight-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes glow{0%,to{opacity:.8}50%{opacity:.4}}@keyframes badge-bounce{0%{transform:scale(0) rotate(-45deg)}50%{transform:scale(1.2) rotate(10deg)}to{transform:scale(1) rotate(0)}}.video-card.fade-highlight{transition:all 1s ease-out}.video-card.fade-highlight:before{opacity:0;transition:opacity 1s ease-out}.video-card.fade-highlight:after{opacity:0;transition:opacity .5s ease-out}@media (max-width: 768px){.refresh-indicator{top:60px;right:10px;padding:6px 10px;font-size:.75rem}.new-videos-notification{margin:var(--spacing-sm)}.notification-content{padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-sm)}.notification-icon{font-size:1.25rem}.notification-text{font-size:.875rem}.notification-action{padding:4px 12px;font-size:.75rem}}.video-card.video-error{position:relative;opacity:.8}.video-card.video-error .video-thumbnail{filter:grayscale(100%) brightness(.7)}.video-error-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000e6;color:#fff;padding:var(--spacing-md);border-radius:var(--border-radius);text-align:center;z-index:var(--z-modal-elements);min-width:150px;box-shadow:0 4px 12px #0000004d}.video-error-message .error-icon{font-size:2rem;margin-bottom:var(--spacing-xs)}.video-error-message .error-text{font-size:.875rem;margin-bottom:var(--spacing-sm);color:var(--text-primary)}.video-error-message .error-retry-btn{background:var(--primary-color);color:#fff;border:none;padding:6px 16px;border-radius:var(--border-radius);cursor:pointer;font-size:.875rem;transition:background-color .2s}.video-error-message .error-retry-btn:hover{background:var(--primary-hover)}.video-thumbnail[data-lazy-src]{animation:pulse-soft 1.5s ease-in-out infinite}@keyframes pulse-soft{0%,to{opacity:.5}50%{opacity:.8}}.audio-control-container{flex:0 0 auto;min-width:60px;max-width:80px;padding:0;background:transparent;border-radius:4px}.audio-device-label{display:block;font-size:9px;color:var(--text-secondary);margin-bottom:2px;font-weight:500}.audio-device-selector{width:100%;padding:2px 4px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background-color:var(--dark-surface);color:var(--text-primary);font-size:10px;cursor:pointer;transition:all var(--transition-normal);display:block}.audio-device-selector:hover:not(:disabled){border-color:var(--primary-green);background-color:var(--dark-surface-elevated)}.audio-device-selector:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 2px #00ff8933}.audio-device-selector:disabled{opacity:.4;cursor:not-allowed;background-color:#1a1d2480}.audio-device-selector option{background-color:var(--dark-surface-elevated);color:var(--text-primary);padding:4px 8px}.audio-device-selector option:hover{background-color:var(--primary-green-soft)}.audio-level-meter{width:100%;height:3px;background:var(--border-subtle);border-radius:2px;margin-top:4px;overflow:hidden;display:none}.audio-level-bar{height:100%;width:0%;background-color:var(--success-color);transition:width .1s ease-out,background-color .3s ease;border-radius:2px}.audio-level-bar.low{background-color:var(--success-color)}.audio-level-bar.medium{background-color:var(--warning-caution)}.audio-level-bar.high{background-color:var(--warning-orange)}.audio-level-bar.peak{background-color:var(--error-color)}.audio-warning{display:flex;align-items:center;gap:4px;margin-top:4px;width:100%;padding:3px 6px;background:#ff44441a;border:1px solid rgba(255,68,68,.3);border-radius:var(--radius-sm);font-size:10px;color:var(--danger-red-vivid)}.audio-warning .warning-icon{font-size:14px}.audio-warning.alert{background:#ffaa001a;border:1px solid rgba(255,170,0,.3);border-radius:var(--radius-sm);padding:8px 12px;font-size:.75rem;color:var(--warning-amber);display:flex;align-items:center;gap:8px;margin-top:var(--spacing-sm)}.camera-controls .audio-control-container{order:2;margin-left:auto}.volume-control{display:flex;align-items:center;gap:var(--spacing-sm)}.volume-slider{width:80px;height:4px;background:var(--dark-surface);border-radius:2px;outline:none;-webkit-appearance:none}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;background:var(--primary-green);cursor:pointer;border-radius:50%}.volume-slider::-moz-range-thumb{width:12px;height:12px;background:var(--primary-green);cursor:pointer;border-radius:50%;border:none}.volume-icon{font-size:14px;color:var(--text-secondary)}.volume-icon.muted{color:var(--error-color)}.microphone-indicator{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:10px;color:var(--text-secondary)}.microphone-indicator.active{border-color:var(--primary-green);color:var(--primary-green)}.microphone-indicator.active .mic-icon{animation:pulse 2s ease-in-out infinite}.mic-icon{font-size:12px}@media (max-width: 768px){.audio-control-container{min-width:50px;max-width:60px}.audio-device-label{font-size:8px}.audio-device-selector{font-size:9px;padding:2px 3px}}@media (max-width: 768px){.camera-controls{flex-wrap:wrap}.audio-control-container{width:100%;max-width:none;margin-top:var(--spacing-sm);margin-left:0}}.audio-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.audio-device-selector:focus-visible,.volume-slider:focus-visible{outline:2px solid var(--primary-green);outline-offset:2px}.detection-container{padding:var(--spacing-xs);text-align:left;background:#1a1d244d;border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.detection-label{color:var(--text-secondary);font-size:.75rem;font-weight:500;margin-right:var(--spacing-sm);opacity:.8}.detection-tags{display:flex;flex-wrap:wrap;gap:.4em;margin-bottom:var(--spacing-sm)}.detection-tags-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.detection-tag{background:var(--dark-surface-elevated);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:2px 8px;font-size:.7rem;font-weight:500;transition:all var(--transition-normal)}.detection-tag.visual-tag{border-color:var(--primary-green-soft);color:var(--primary-green)}.detection-tag.audio-tag{border-color:var(--warning-yellow-soft);color:var(--warning-yellow)}.detection-tag:hover{background:var(--dark-surface);transform:translateY(-1px)}.detection-tag.more-indicator{background:var(--dark-surface);border-color:var(--border-default);color:var(--text-secondary);cursor:help;position:relative}.detection-tag.more-indicator:hover{border-color:var(--primary-green);color:var(--text-primary)}.detection-tag.more-indicator:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:8px 12px;background:var(--dark-surface-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);font-size:.65rem;line-height:1.3;white-space:pre-wrap;max-width:200px;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:var(--z-detection-tooltip)}.detection-tag.more-indicator:hover:after{opacity:1}.detection-tag.more-indicator:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:0;width:0;height:0;border-style:solid;border-width:8px 8px 0 8px;border-color:var(--border-default) transparent transparent transparent;opacity:0;transition:opacity .2s ease}.detection-tag.more-indicator:hover:before{opacity:1}.detection-badge{background:var(--primary-green-soft);color:var(--primary-green);border-radius:12px;padding:.2em .8em;font-size:.95em;font-weight:500;display:inline-block;box-shadow:0 1px 2px #0000000a;border:1px solid var(--primary-green-light)}.detection-badge:hover{background:var(--primary-green-light);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a;transition:all .2s ease}.video-detection-wrapper{min-height:2rem;display:flex;align-items:center}.detection-wrapper{padding:var(--spacing-xs) var(--spacing-sm);border-top:1px solid var(--border-subtle)}.detection-toggle{background:transparent;border:none;color:var(--text-secondary);font-size:.75rem;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:4px;transition:all var(--transition-normal);width:100%;justify-content:flex-start}.detection-toggle:hover{background:var(--dark-surface-hover);color:var(--text-primary)}.detection-toggle:focus{outline:none;box-shadow:0 0 0 2px var(--primary-green-soft)}.detection-toggle .toggle-icon{display:inline-block;transition:transform var(--transition-normal);font-size:.65rem;line-height:1}.detection-toggle[aria-expanded=true] .toggle-icon{transform:rotate(90deg)}.detection-toggle .toggle-text{flex:1;text-align:left}.detection-container.collapsed{overflow:hidden;max-height:0;opacity:0;transition:max-height .3s ease,opacity .2s ease}.detection-container:not(.collapsed){max-height:500px;opacity:1;transition:max-height .3s ease,opacity .2s ease;margin-top:var(--spacing-xs)}.tags-section{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.tags-section:last-child{margin-bottom:0}.tags-label{color:var(--text-secondary);font-size:.7rem;font-weight:500;margin-right:var(--spacing-xs);white-space:nowrap}.visual-section .tags-label{color:var(--primary-green-soft)}.audio-section .tags-label{color:var(--warning-yellow-soft)}.session-videos .detection-container{font-size:.7rem}.session-videos .detection-tag{padding:.2rem .5rem;font-size:.7rem}.detection-icon{width:14px;height:14px;margin-right:4px;display:inline-block;vertical-align:middle}.detection-icon.visual{color:var(--primary-green)}.detection-icon.audio{color:var(--warning-yellow)}.detection-stats{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-sm);font-size:.875rem;color:var(--text-secondary)}.detection-stat{display:flex;align-items:center;gap:var(--spacing-xs)}.detection-stat-label{font-weight:500}.detection-stat-value{color:var(--text-primary)}.detection-confidence{display:inline-flex;align-items:center;gap:4px;font-size:.65rem;color:var(--text-secondary);margin-left:4px}.confidence-bar{width:30px;height:3px;background:var(--dark-surface);border-radius:2px;overflow:hidden}.confidence-fill{height:100%;background:var(--primary-green);transition:width .3s ease}.confidence-fill.low{background:var(--error-color)}.confidence-fill.medium{background:var(--warning-yellow)}.confidence-fill.high{background:var(--success-color)}@media (max-width: 768px){.detection-tags{gap:.3em}.detection-tag{font-size:.65rem;padding:2px 6px}.detection-label{font-size:.7rem}}@media (max-width: 768px){.detection-container{flex-direction:column;align-items:flex-start}.detection-label{margin-bottom:var(--spacing-xs)}}@keyframes detectionFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.detection-tag.new{animation:detectionFadeIn .3s ease-out}@keyframes detectionPulse{0%{box-shadow:0 0 #00ff8966}70%{box-shadow:0 0 0 10px #00ff8900}to{box-shadow:0 0 #00ff8900}}.detection-tag.active{animation:detectionPulse 2s infinite}.camera-card.detection-active{border-color:var(--success-green);box-shadow:0 0 15px #00ff894d;animation:detectionPulse 2s infinite}.unified-bar{background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-xs) var(--spacing-md);margin-bottom:var(--spacing-sm);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xl);min-height:48px}.control-section{display:flex;align-items:center;gap:var(--spacing-md)}.recording-toggle-btn.compact{padding:.375rem 1.5rem;font-size:.875rem;height:36px;display:flex;align-items:center}.cameras-count{color:var(--text-secondary);font-size:.875rem}.dashboard-content{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.dashboard-grid{margin:0;padding:0;gap:0}.camera-grid-section{margin:0}.camera-grid-section .camera-grid{margin:0;padding:0}.camera-grid:has(.loading-state:only-child){display:block;text-align:center}.camera-grid .loading-state{padding:var(--spacing-xl);color:var(--text-secondary);min-height:200px;line-height:200px;display:block}@media (min-width: 1920px){.unified-bar{padding:var(--spacing-xs) var(--spacing-lg)}.status-section{gap:var(--spacing-xl)}}@media (max-width: 768px){.unified-bar{flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);height:auto;min-height:auto}.status-section{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:2px var(--spacing-md);width:100%}.status-section .status-item{display:flex;align-items:center;gap:.2rem;font-size:.875rem;justify-content:flex-start;white-space:normal;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.control-section{width:100%;flex-direction:column;gap:var(--spacing-sm)}.control-section button{width:100%}.recording-toggle-btn.compact{width:100%;min-width:unset}}#account-view{overflow-y:auto}#account-view .view-header{margin-bottom:var(--spacing-md);flex-shrink:0}#account-view .form-group{margin-bottom:var(--spacing-sm)}.account-content{display:grid;gap:var(--spacing-lg);width:100%}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:start}.account-grid>*{transition:all .3s cubic-bezier(.4,0,.2,1)}.profile-info-card{grid-column:1;grid-row:1}.account-right-column{grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:var(--spacing-md)}.account-left,.account-right{display:contents}.account-content .dashboard-card{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--spacing-lg);min-height:200px;display:flex;flex-direction:column;transition:all var(--transition-normal)}.account-right-column .dashboard-card{padding:var(--spacing-md)}.account-content .dashboard-card:hover{border-color:var(--primary-green);box-shadow:var(--shadow-soft)}.account-content .dashboard-card .card-content{flex:1;display:flex;flex-direction:column}.profile-info-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.profile-info-row{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-subtle)}.profile-info-row:last-child{border-bottom:none;padding-bottom:0}.info-label{flex:0 0 140px;font-weight:500;color:var(--text-secondary);font-size:.9rem}.info-value{flex:1;display:flex;align-items:center;gap:var(--spacing-sm);justify-content:flex-end;text-align:right}.value-text{color:var(--text-primary);font-size:.95rem;margin-right:auto}.value-mono{font-family:var(--font-mono);font-size:.85rem}.btn-icon{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.btn-icon:hover{background:var(--dark-surface);color:var(--primary-green)}.btn-edit i{font-size:.75rem}.btn-copy i{font-size:.85rem}.edit-all-btn{margin-left:auto}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.badge-verified{background:#4caf501a;color:var(--success-color);border:1px solid rgba(76,175,80,.2)}.badge-verified i{font-size:.65rem}.btn-text-link{color:var(--primary-green);text-decoration:none;font-size:.85rem;font-weight:500;transition:opacity var(--transition-fast)}.btn-text-link:hover{opacity:.8;text-decoration:underline}.profile-info-row.editing .info-value{padding:0}.profile-info-row.editing .value-text{display:none}.profile-info-row .edit-input{flex:1;padding:var(--spacing-xs) var(--spacing-sm);background:var(--dark-surface);border:1px solid var(--primary-green);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.95rem;display:none}.profile-info-row.editing .edit-input{display:block}.profile-info-row .edit-actions{display:none;gap:var(--spacing-xs)}.profile-info-row.editing .edit-actions{display:flex}.profile-info-row.editing .btn-edit{display:none}.profile-info-card .card-header,.security-card .card-header,.account-actions-card .card-header,.danger-zone-card .card-header{margin-bottom:var(--spacing-md);display:flex;justify-content:space-between;align-items:center}.profile-info-card .card-header h3,.security-card .card-header h3,.account-actions-card .card-header h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.profile-info-card .card-content,.security-card .card-content,.account-actions-card .card-content{padding:var(--spacing-lg)}.account-right-column .security-card{flex:1 1 auto}.account-right-column .security-card .card-content{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);justify-content:center}.security-card .btn-block{width:100%;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);font-weight:500;font-size:.9rem}.security-card .btn-block i{margin-right:var(--spacing-sm);font-size:.85rem}.security-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-subtle)}.security-item:last-child{border-bottom:none;padding-bottom:0}.security-item:not(:last-child){border-bottom:1px solid var(--border-subtle)}.security-item.compact{padding:var(--spacing-xs) 0}.security-item.compact .security-desc{display:none}.security-item.compact .security-title{font-size:.9rem;margin-bottom:0}.security-card .btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.85rem}.security-info{flex:1}.security-title{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.security-desc{font-size:.875rem;color:var(--text-secondary)}.security-value{font-size:.875rem;color:var(--text-primary);text-align:right;font-weight:500}.action-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-subtle)}.action-item:last-child{border-bottom:none;padding-bottom:0}.action-item:not(:last-child){border-bottom:1px solid var(--border-subtle)}.action-item.compact{padding:var(--spacing-sm) 0}.action-item.compact .action-desc{display:none}.action-info{flex:1;margin-right:var(--spacing-lg)}.action-title{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.action-desc{font-size:.875rem;color:var(--text-secondary)}.action-subtitle{font-size:.75rem;color:var(--text-muted);margin-top:.125rem}.action-item.danger .action-title{color:var(--error-color)}.danger-zone{border-color:#ef44444d;background:#ef444408}.account-right-column .danger-zone-card{border-color:#ff47574d;background:#ff475705;flex:0 0 auto}.account-right-column .danger-zone-card .card-header{margin-bottom:var(--spacing-sm);padding-bottom:0}.account-right-column .danger-zone-card .card-header h3{color:var(--error-color);font-size:.95rem;font-weight:600;margin:0}.account-right-column .danger-zone-card .card-content{padding:var(--spacing-sm) var(--spacing-md)}.account-right-column .danger-zone-card .danger-warning{font-size:.8rem;margin:0 0 var(--spacing-xs) 0;padding:0;color:var(--text-secondary);line-height:1.3;background:none;border:none}.account-right-column .danger-zone-card .btn-danger{padding:.25rem var(--spacing-sm);font-size:.85rem}.danger-zone .card-content{padding:var(--spacing-lg)}.danger-title{display:flex;align-items:center;gap:var(--spacing-sm)}.danger-warning{background:#ef44440d;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.danger-description{color:var(--text-muted);margin-bottom:var(--spacing-lg)}.account-section.danger-zone{border-color:var(--error-color);background:#ff47570d}.dashboard-card.card-compact{height:auto;min-height:auto;max-height:200px;padding:var(--spacing-sm) var(--spacing-md)}.dashboard-card.card-compact .card-header{margin-bottom:var(--spacing-xs)}.dashboard-card.card-compact .card-content{padding:var(--spacing-xs) 0}.plan-info-display{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--dark-surface);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.account-actions{text-align:right}.account-section{background:var(--gradient-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.account-section h3{color:var(--text-primary);margin-bottom:var(--spacing-lg);font-size:1.1rem}.folder-selection{display:flex;flex-direction:column;gap:var(--spacing-sm)}@container dashboard-view (max-width: 700px){.account-grid{grid-template-columns:1fr}.profile-info-card{grid-column:1;grid-row:1}.account-right-column{grid-column:1;grid-row:2;margin-top:var(--spacing-lg)}.account-right-column .security-card .card-content,.account-right-column .danger-zone-card .card-content{padding:var(--spacing-lg)}.account-content .dashboard-card{padding:var(--spacing-xs);overflow:hidden}.profile-info-card .card-content,.security-card .card-content,.account-actions-card .card-content,.danger-zone-card .card-content{padding:var(--spacing-md);overflow:hidden}.security-card .btn-block,.danger-zone-card .btn-danger,.account-content .btn{max-width:100%;box-sizing:border-box}.action-info{margin-right:var(--spacing-md)}}#billing-view{overflow-y:auto}#billing-view .view-header{margin-bottom:var(--spacing-md);flex-shrink:0}.billing-content{display:grid;gap:var(--spacing-lg);width:100%}.billing-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:start;grid-template-rows:auto auto}.billing-grid>*{transition:all .3s cubic-bezier(.4,0,.2,1)}.billing-left,.billing-right{display:contents}.current-plan-card{grid-column:1;grid-row:1 / span 2;display:flex;flex-direction:column}.current-plan-card .card-content{flex:1}.payment-method-card{grid-column:2;grid-row:1;display:flex;flex-direction:column}.billing-support-card{grid-column:2;grid-row:2;display:flex;flex-direction:column}.payment-method-card .card-content,.billing-support-card .card-content{flex:1}.billing-content .dashboard-card{padding:var(--spacing-lg);display:flex;flex-direction:column}.resource-links{display:flex;flex-direction:column;gap:var(--spacing-xs)}.resource-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);text-decoration:none;transition:all var(--transition-fast)}.resource-link:hover{background:var(--dark-surface-elevated);border:1px solid var(--primary-green);transform:translateY(-1px);box-shadow:0 2px 8px #00ff8926}.resource-link i{color:var(--primary-green);font-size:1rem}.support-divider{height:1px;background:var(--border-subtle);margin:var(--spacing-sm) 0}.billing-support-card .btn{margin-top:var(--spacing-sm)}.billing-support-card .help-links{padding:var(--spacing-lg)}.billing-content .dashboard-card .card-content{flex:1;display:flex;flex-direction:column}.billing-content .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.billing-content .card-header h3{font-size:1.1rem}.billing-section{background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.billing-section h3{color:var(--text-primary);margin-bottom:var(--spacing-lg)}.plan-badge{background:transparent;color:var(--primary-green);border:1px solid var(--primary-green);padding:.375rem 1rem;border-radius:var(--radius-full);font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.plan-details{background:var(--dark-surface);border-radius:var(--radius-md);padding:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.plan-amount{display:flex;align-items:baseline;justify-content:center;gap:.25rem}.plan-amount .currency{font-size:1rem;color:var(--text-secondary)}.plan-amount .price{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.plan-amount .period{font-size:.875rem;color:var(--text-secondary)}.plan-features{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.plan-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.billing-quick-links{display:flex;justify-content:center;align-items:center;gap:var(--spacing-sm);font-size:.85rem}.billing-quick-links .quick-link{color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.billing-quick-links .quick-link:hover{color:var(--primary-green)}.billing-quick-links .separator{color:var(--text-muted)}.plan-actions .btn-link{text-decoration:none;padding:0;margin-top:var(--spacing-xs)}.plan-features ul{list-style:none;text-align:left;max-width:300px;margin:0 auto}.plan-features li{color:var(--text-secondary);margin-bottom:var(--spacing-sm);padding-left:var(--spacing-lg);position:relative}.plan-features li:before{content:"✓";color:var(--primary-green);font-weight:700;position:absolute;left:0}.feature-item{display:flex;align-items:center;gap:var(--spacing-xs)}.plan-usage{margin-top:var(--spacing-sm)}.usage-metric{margin-bottom:var(--spacing-xs)}.usage-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.billing-actions-card .action-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-subtle)}.billing-actions-card .action-item:last-child{border-bottom:none}.billing-actions-card .action-item.danger .action-title{color:var(--error-color)}.billing-info{margin-bottom:var(--spacing-md)}.info-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;font-size:.9rem}.payment-info{margin-bottom:var(--spacing-sm)}.payment-method{background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-lg)}.no-payment-method{background:var(--dark-surface);border:1px dashed var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-lg);text-align:center;margin-bottom:var(--spacing-md)}.payment-icon-empty{font-size:2rem;color:var(--text-muted);margin-bottom:var(--spacing-sm);display:block}.no-payment-method p{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--spacing-md)}.no-payment-method .btn{margin:0 auto}.billing-history{background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.history-item{display:grid;grid-template-columns:1fr auto auto auto;gap:var(--spacing-md);align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-subtle)}.history-item:last-child{border-bottom:none}.history-date{color:var(--text-secondary);font-size:.9rem}.history-amount{color:var(--text-primary);font-weight:600;font-family:monospace}.history-status{color:var(--success-color);font-size:.875rem;text-transform:capitalize}.plan-price .amount{font-size:2rem;font-weight:700;color:var(--text-primary)}.plan-price .period{font-size:.875rem;color:var(--text-secondary)}.price-amount{display:flex;align-items:baseline;justify-content:center;gap:.25rem}.price-amount .currency{font-size:1rem;color:var(--text-secondary)}.price-amount .amount{font-size:2rem;font-weight:700;color:var(--primary-green)}.price-amount .period{font-size:.875rem;color:var(--text-secondary)}.current-usage{background:var(--dark-surface);border-radius:var(--radius-md);padding:var(--spacing-md);text-align:left}.plan-limitation{background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.limitation-info{display:flex;justify-content:space-between;align-items:center}@container dashboard-view (max-width: 700px){.billing-grid{grid-template-columns:1fr}.current-plan-card,.billing-actions-card,.payment-method-card,.billing-support-card{grid-column:1;grid-row:auto}.billing-content{gap:var(--spacing-md)}.billing-content .dashboard-card{margin-bottom:var(--spacing-sm)}.history-item{grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:var(--spacing-xs)}.history-date{grid-column:1}.history-amount{grid-column:2;grid-row:1}.history-status{grid-column:1;grid-row:2}.history-actions{grid-column:2;grid-row:2}.plan-features{flex-direction:column;gap:var(--spacing-sm)}}@media (max-width: 768px){.plan-amount .price{font-size:1.25rem}}.grace-countdown{color:var(--warning-color, #f0ad4e);font-weight:500;font-size:.85em}.grace-expired{color:var(--error-color, #ff4757);font-weight:600;font-size:.85em}.grace-update-btn{display:inline-block;margin-left:.75em;padding:.25em .75em;font-size:.8em;border-radius:4px;background:var(--warning-color, #f0ad4e);color:var(--text-primary);border:none;cursor:pointer;vertical-align:middle}.grace-update-btn:hover{opacity:.85}.grace-update-btn:disabled{opacity:.5;cursor:wait}@media print{.billing-section{border:1px solid #ccc;break-inside:avoid}}.settings-content{display:grid;gap:var(--spacing-lg);width:100%}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:start}.settings-left,.settings-right{display:flex;flex-direction:column;gap:var(--spacing-lg)}.settings-content .dashboard-card{padding:var(--spacing-md)}.settings-section{background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.agent-tokens-card .card-subtitle{color:var(--text-muted);font-size:.875rem;display:block;margin-top:.25rem}.agent-limit-display{display:flex;align-items:center;gap:var(--spacing-sm);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.agent-limit-display .header-actions{margin-left:auto;display:flex;gap:var(--spacing-xs);align-items:center}.header-actions .btn{padding:.25rem .5rem;font-size:.75rem}.active-tokens-list{min-height:60px;padding-top:0}.loading-tokens{display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);color:var(--text-muted);flex-direction:column;gap:var(--spacing-xs)}.no-tokens{display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);color:var(--text-muted);flex-direction:column;gap:var(--spacing-xs);text-align:center}.no-tokens i{font-size:2rem;color:var(--text-muted);margin-bottom:var(--spacing-sm)}.agent-token-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-bottom:var(--spacing-xs);background:var(--dark-surface)}.agent-token-item:last-child{margin-bottom:0}.token-info{flex-grow:1}.agent-name-row{display:flex;align-items:center;gap:var(--spacing-xs);margin-bottom:0;flex-wrap:wrap}.agent-name-row .token-actions{margin-left:auto;display:flex;gap:var(--spacing-xs)}.agent-status-row{margin:var(--spacing-xs) 0;padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-subtle)}.agent-name-row i{color:var(--primary);font-size:1rem}.device-name{font-weight:600;font-size:.95rem;color:var(--text-primary);flex:1;min-width:100px}.token-details{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--spacing-sm);font-size:.8125rem;align-items:center}.detail-item{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary);line-height:1.3;white-space:nowrap}.detail-item:not(:last-child):after{content:"•";margin-left:var(--spacing-sm);color:var(--text-muted)}.detail-item i{color:var(--text-muted);width:14px;font-size:.8rem;flex-shrink:0}.detail-item span{color:var(--text-secondary)}.token-actions{display:flex;gap:var(--spacing-sm)}.token-info p{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary)}.token-display{margin:var(--spacing-lg) 0}.token-display label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--text-primary)}.token-input-group{display:flex;gap:var(--spacing-sm)}.token-input{flex-grow:1;font-family:Courier New,monospace;font-size:.875rem;padding:var(--spacing-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--dark-surface);color:var(--text-primary)}.copy-token-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--primary);color:var(--dark-bg);border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;white-space:nowrap;transition:all .2s ease}.copy-token-btn:hover{background:var(--primary-hover)}.copy-token-btn.success{background:var(--success)}.agent-instructions{background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-lg)}.agent-instructions h4{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary);font-size:1rem}.agent-instructions ol{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg);color:var(--text-secondary)}.agent-instructions li{margin-bottom:var(--spacing-xs)}.warning-text{color:var(--warning);font-size:.875rem;display:flex;align-items:center;gap:var(--spacing-xs);margin-top:var(--spacing-md);padding:var(--spacing-sm);background:#f59e0b1a;border-radius:var(--radius-sm)}.settings-section h3{color:var(--text-primary);margin-bottom:var(--spacing-lg)}.settings-actions{text-align:right}.folder-selection{margin-bottom:var(--spacing-md)}.folder-input-wrapper{display:flex;align-items:center;gap:var(--spacing-sm)}.folder-icon{font-size:1.2rem;flex-shrink:0}.folder-input{flex:1;min-width:0;max-width:100%}#selectFolderBtn{flex-shrink:0;padding:.5rem;background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal);display:inline-flex;align-items:center;justify-content:center}#selectFolderBtn:hover{border-color:var(--primary);color:var(--primary)}.storage-settings.disabled{opacity:.5;pointer-events:none}.storage-usage{margin-top:var(--spacing-md)}.usage-bar{width:100%;height:8px;background:var(--dark-surface);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-sm)}.control-settings{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-normal)}.control-settings:hover{border-color:var(--primary-green);color:var(--primary-green)}@container dashboard-view (max-width: 700px){.settings-grid{grid-template-columns:1fr}.settings-left,.settings-right{width:100%}}@media (max-width: 768px){.settings-content{gap:var(--spacing-md)}.settings-section{padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.settings-section h3{font-size:1.1rem;margin-bottom:var(--spacing-md)}}@media print{.settings-section{border:1px solid #ccc;break-inside:avoid}}.notification-settings-card{background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.notification-settings-card .compact-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-subtle)}.notification-settings-card .compact-header h3{margin:0;font-size:.9rem;font-weight:600;color:var(--text-primary);flex:1}.notification-content.compact{padding:var(--spacing-sm) var(--spacing-md);transition:opacity .2s ease}.notification-content.compact.disabled{opacity:.5;pointer-events:none}.notif-row-section{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) 0}.notif-row-section:not(:last-child){border-bottom:1px solid var(--border-subtle);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.notif-section-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;min-width:55px}.notif-toggles{display:flex;flex-wrap:wrap;gap:var(--spacing-sm) var(--spacing-md);flex:1}.notif-item{display:flex;align-items:center;gap:var(--spacing-xs);cursor:default}.notif-item[title]{cursor:help}.notif-item[title]:hover span{color:var(--text-primary)}.notif-item span{font-size:.8rem;color:var(--text-secondary);transition:color .15s ease}.toggle-switch.small{width:32px;height:18px;flex-shrink:0}.toggle-switch.small .toggle-slider:before{width:14px;height:14px;left:2px;bottom:2px}.toggle-switch.small .toggle-input:checked+.toggle-slider:before{transform:translate(14px)}@media (max-width: 600px){.notif-row-section{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.notif-section-label{margin-bottom:2px}.notif-toggles{width:100%}}.agent-limit-section{margin-bottom:0;padding-bottom:0}.agent-limit-display{display:flex;align-items:center;gap:var(--spacing-md);padding:0;margin-bottom:var(--spacing-xs)}.agent-limit-display .btn{padding:.25rem .5rem;font-size:.75rem;white-space:nowrap}.agent-limit-display .btn i{font-size:.7rem}.limit-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.limit-value{color:var(--text-primary);font-weight:600;font-size:.875rem}.upgrade-link{color:var(--primary);text-decoration:none;font-size:.875rem;font-weight:500;transition:color var(--transition-normal)}.upgrade-link:hover{color:var(--primary-hover);text-decoration:underline}.agent-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);background:var(--dark-surface);transition:border-color var(--transition-normal)}.agent-item:hover{border-color:var(--border-focus)}.agent-item:last-child{margin-bottom:0}.agent-name{font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.agent-details{display:flex;flex-direction:column;gap:2px;font-size:.875rem;color:var(--text-muted)}.agent-item .btn-danger,.agent-item .btn-primary,.agent-token-item .btn-danger,.agent-token-item .btn-primary{padding:.375rem .75rem;font-size:.8125rem;min-height:32px;min-width:auto;line-height:1.3}.agent-item .btn-danger i,.agent-item .btn-primary i,.agent-token-item .btn-danger i,.agent-token-item .btn-primary i{font-size:.75rem;margin-right:.375rem;vertical-align:middle}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .5rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.status-badge.connected{background:#22c55e26;color:var(--success);border:1px solid rgba(34,197,94,.3)}.status-badge.disconnected{background:#94a3b826;color:var(--text-muted);border:1px solid rgba(148,163,184,.3)}.status-badge.active,.status-badge.used{background:#22c55e26;color:var(--success);border:1px solid rgba(34,197,94,.3)}.status-badge.pending{background:#f59e0b26;color:var(--warning);border:1px solid rgba(245,158,11,.3)}.status-badge.expired{background:#ef444426;color:var(--danger);border:1px solid rgba(239,68,68,.3)}.status-badge i{font-size:.7rem}.agent-token-modal{max-width:600px;width:90vw}.agent-token-modal .token-info{background:var(--dark-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.agent-token-modal .token-info p{margin:0 0 var(--spacing-xs) 0;color:var(--text-secondary)}.agent-token-modal .token-info strong{color:var(--text-primary);font-weight:600}.agent-token-modal .token-display{margin-bottom:var(--spacing-xl)}.agent-token-modal .token-display label{display:block;margin-bottom:var(--spacing-sm);color:var(--text-primary);font-weight:500;font-size:.875rem}.agent-token-modal .token-input-group{display:flex;gap:var(--spacing-sm);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-xs)}.agent-token-modal .token-input{flex:1;background:transparent;border:none;color:var(--primary-green);font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:.875rem;padding:var(--spacing-sm);outline:none}.agent-token-modal .token-input-group:focus-within{border-color:var(--primary-green)}.agent-token-modal .agent-instructions{background:var(--dark-surface);border-radius:var(--radius-md);padding:var(--spacing-lg)}.agent-token-modal .agent-instructions h4{margin:0 0 var(--spacing-md) 0;color:var(--text-primary);font-size:1rem;font-weight:600}.agent-token-modal .agent-instructions ol{margin:0 0 var(--spacing-md) 0;padding-left:var(--spacing-lg);color:var(--text-secondary);line-height:1.6}.agent-token-modal .agent-instructions li{margin-bottom:var(--spacing-xs)}.agent-token-modal .warning-text{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-md);color:var(--warning);font-size:.875rem;line-height:1.4}.agent-token-modal .warning-text i{flex-shrink:0;margin-top:2px}.agent-token-modal .btn.success{background:var(--success);color:#fff}.upgrade-modal{max-width:500px;width:90vw}.upgrade-info{margin-bottom:var(--spacing-lg);text-align:center}.upgrade-info p{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary);line-height:1.5}.plan-options{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.plan-option{padding:var(--spacing-lg);border:2px solid var(--border-subtle);border-radius:var(--radius-lg);text-align:center;background:var(--dark-surface);transition:all var(--transition-normal)}.plan-option:hover{border-color:var(--primary);background:var(--dark-surface-elevated)}.plan-option h4{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary);font-size:1.1rem;font-weight:600}.plan-option p{margin:0 0 var(--spacing-xs) 0;color:var(--text-secondary);font-size:.875rem}.plan-option .price{color:var(--primary);font-weight:600;font-size:1rem;margin-top:var(--spacing-sm)}@media (max-width: 768px){.agent-limit-display{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.plan-options{grid-template-columns:1fr}.agent-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.token-actions{align-self:stretch}}.support-content{display:grid;gap:var(--spacing-md);width:100%}.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);align-items:stretch}.support-left{display:flex;flex-direction:column}.support-right{display:flex;flex-direction:column;gap:var(--spacing-xl)}.contact-support-card,.quick-help-card,.community-card{margin-bottom:0}.contact-support-card{display:flex;flex-direction:column;min-height:100%}.contact-support-card .support-description{margin-bottom:var(--spacing-lg)}.contact-support-card button{margin-top:auto}.contact-support-card .card-header,.quick-help-card .card-header,.community-card .card-header{margin-bottom:var(--spacing-md)}.contact-support-card .card-header h3,.quick-help-card .card-header h3,.community-card .card-header h3{font-size:1.1rem}.contact-support-card .form-group{margin-bottom:var(--spacing-md)}.contact-support-card textarea{resize:vertical;min-height:120px}.support-description{color:var(--text-secondary);margin-bottom:var(--spacing-md);font-size:.85rem;line-height:1.5}.support-links{margin-bottom:var(--spacing-xs)}.support-link{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;color:var(--text-secondary);text-decoration:none;transition:color .2s ease;border-bottom:1px solid var(--border-subtle);font-size:.875rem}.support-link:last-child{border-bottom:none}.support-link:hover{color:var(--primary-green)}.support-link i:first-child{width:20px;text-align:center;color:var(--text-muted)}.support-link i:last-child{margin-left:auto;font-size:.75rem}.support-contact{text-align:center;padding-top:var(--spacing-xs);border-top:1px solid var(--border-subtle)}.support-text{font-size:.75rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.help-links{display:flex;flex-direction:column;gap:var(--spacing-md)}.help-link{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);color:var(--primary-green);text-decoration:none;padding:var(--spacing-md);border-radius:var(--radius-md);transition:all var(--transition-normal);border:1px solid transparent}.help-link:hover{background:var(--primary-green-soft);color:var(--primary-green-hover);border-color:var(--primary-green);transform:translate(4px)}.help-icon{font-size:1.2rem;width:24px;text-align:center;flex-shrink:0}.help-links.compact{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.help-links.compact .help-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);text-decoration:none;color:var(--text-primary);font-size:.85rem;transition:all .2s ease}.help-links.compact .help-link:hover{background:var(--dark-surface-elevated);border-color:var(--primary-green)}.help-links.compact .help-icon{font-size:1rem}.community-links{display:flex;flex-direction:column;gap:var(--spacing-md)}.community-link{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);color:var(--text-secondary);text-decoration:none;transition:all var(--transition-normal)}.community-link:hover{border-color:var(--primary-green);background:var(--primary-green-soft);transform:translateY(-2px);box-shadow:var(--shadow-soft)}.community-icon{font-size:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--primary-green-soft);border-radius:var(--radius-lg);flex-shrink:0}.community-info{flex:1}.community-title{font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.community-desc{color:var(--text-muted);font-size:.9rem}.community-link.compact{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--dark-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);text-decoration:none;transition:all .2s ease}.community-link.compact:hover{background:var(--dark-surface-elevated);border-color:var(--primary-green)}.community-link.compact .community-icon{font-size:1.25rem}.community-link.compact .community-title{color:var(--text-primary);font-weight:500;font-size:.85rem;margin-bottom:0}.community-link.compact .community-desc{color:var(--text-secondary);font-size:.75rem}.support-note{color:var(--text-muted);font-size:.9rem;margin-top:var(--spacing-lg);text-align:center}.support-note a{color:var(--primary-green);text-decoration:none}.support-note a:hover{color:var(--primary-green-hover);text-decoration:underline}.support-section{background:var(--dark-surface-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-xl)}@container dashboard-view (max-width: 700px){.support-grid{grid-template-columns:1fr}.support-left,.support-right{width:100%}}@media (max-width: 768px){.support-content{gap:var(--spacing-sm)}.help-links.compact{grid-template-columns:1fr}.community-link{padding:var(--spacing-md);gap:var(--spacing-md)}.community-icon{width:40px;height:40px;font-size:1.5rem}.community-title{font-size:.9rem}.community-desc{font-size:.8rem}.help-link{padding:var(--spacing-sm);font-size:.85rem}}@media print{.support-section{border:1px solid #ccc;break-inside:avoid}}#download-view{overflow-y:auto}#download-view .view-header{margin-bottom:var(--spacing-md);flex-shrink:0}#download-view .view-header h1{font-size:1.25rem;margin-bottom:.25rem}#download-view .view-description{font-size:.85rem;margin-bottom:0}.download-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);margin-bottom:0;width:100%}.download-card-compact{background:var(--gradient-card, linear-gradient(135deg, rgba(13, 21, 36, .9) 0%, rgba(20, 30, 48, .9) 100%));border:1px solid var(--border-subtle, rgba(255, 255, 255, .1));border-radius:var(--radius-xl, 1rem);padding:var(--spacing-lg, 1rem);text-align:center;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm, .5rem)}.download-card-compact:hover{border-color:#00ff894d;box-shadow:0 4px 16px #00ff891a;transform:translateY(-2px)}.download-os-header{display:flex;flex-direction:column;align-items:center;gap:.35rem}.download-os-icon{color:var(--primary-green, #00ff89);width:clamp(20px,3.5vh,32px);height:clamp(20px,3.5vh,32px);flex-shrink:0}.download-card-compact h3{font-size:1rem;font-weight:600;margin:0;color:var(--text-primary, #ffffff)}.download-description{font-size:.75rem;color:var(--text-secondary, #9ca3af);margin:0}.download-version{font-size:.7rem;color:var(--text-muted, #6b7280);margin:0;padding:.25rem .5rem;background:#ffffff0d;border-radius:.25rem}.download-version.version-available{color:var(--primary-green, #00ff89);background:#00ff891a}.download-size{font-size:.7rem;color:var(--text-muted, #6b7280);margin:.25rem 0 0}.download-card-compact .btn{width:100%;min-height:36px;padding:clamp(.25rem,.5vh,.5rem) .75rem;font-size:.875rem}.download-requirements{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-subtle, rgba(255, 255, 255, .1))}.download-requirements h2{text-align:center;font-size:1.25rem;font-weight:700;margin-bottom:.75rem;color:var(--text-primary, #ffffff)}#download-view .system-requirements-card{margin-top:var(--spacing-lg);display:flex;flex-direction:column;padding:var(--spacing-lg)}#download-view .system-requirements-card .card-header{flex-shrink:0;margin-bottom:var(--spacing-md)}.system-requirements-card .card-header h2{font-size:1rem;font-weight:600;margin:0;color:var(--text-primary, #ffffff)}#download-view .system-requirements-card .card-content{flex:1;min-height:0;overflow:hidden}.requirements-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:clamp(.5rem,1vw,1.5rem);width:100%}.req-column h3{font-size:.9rem;font-weight:600;margin-bottom:clamp(.125rem,.5vh,.5rem);color:var(--primary-green, #00ff89)}.req-column ul{list-style:none;padding:0;margin:0}.req-column ol{padding-left:1.2rem;margin:0;line-height:clamp(1.2,.18vh + 1,1.5)}.req-column li{font-size:clamp(.75rem,1.2vh,.875rem);color:var(--text-secondary, #9ca3af);margin-bottom:clamp(0,.2vh,.5rem);padding-left:1.25rem;position:relative;line-height:clamp(1.2,.18vh + 1,1.5)}.req-column li:before{content:"•";position:absolute;left:.5rem;color:var(--primary-green, #00ff89)}.platform-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:5rem;max-width:1200px;margin-left:auto;margin-right:auto}.platform-card{background:var(--gradient-card, linear-gradient(135deg, rgba(13, 21, 36, .9) 0%, rgba(20, 30, 48, .9) 100%));border:1px solid var(--border-subtle, rgba(255, 255, 255, .1));border-radius:var(--radius-xl, 1rem);padding:2.5rem 2rem;text-align:center;transition:all .3s ease;position:relative;overflow:hidden}.platform-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,transparent,var(--primary-green, #00ff89),transparent);opacity:0;transition:opacity .3s ease}.platform-card:hover:before,.platform-card.detected:before{opacity:1}.platform-card:hover{border-color:var(--primary-green, #00ff89);box-shadow:0 8px 32px #00ff8926;transform:translateY(-4px)}.platform-card.detected{border-color:var(--primary-green, #00ff89);box-shadow:0 4px 24px #00ff8933}.platform-card.detected:after{content:"Your System";position:absolute;top:1rem;right:1rem;background:var(--primary-green, #00ff89);color:var(--dark-bg, #0a0f1a);padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.platform-icon{color:var(--primary-green, #00ff89);margin-bottom:1.5rem;display:inline-block}.platform-icon svg{width:64px;height:64px}.platform-card h2{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;color:var(--text-primary, #ffffff)}.platform-version{font-size:.95rem;color:var(--text-secondary, #9ca3af);margin-bottom:1.5rem}.btn-download{width:100%;max-width:280px;margin:0 auto 1rem;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;min-height:48px;display:inline-flex;align-items:center;justify-content:center}.coming-soon-badge{display:inline-block}.platform-note{font-size:.85rem;color:var(--text-muted, #6b7280);margin-top:1rem}.download-mobile-notice{display:none}@media (max-width: 768px){.download-mobile-notice{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;padding:2rem 1.5rem;background:var(--gradient-card, linear-gradient(135deg, rgba(13, 21, 36, .9) 0%, rgba(20, 30, 48, .9) 100%));border:1px solid rgba(0,255,137,.2);border-radius:var(--radius-lg, .75rem);margin-bottom:1rem}.download-mobile-notice svg{color:var(--primary-green, #00ff89);width:48px;height:48px;flex-shrink:0}.download-mobile-notice p{color:var(--text-secondary, #9ca3af);font-size:.95rem;line-height:1.5;margin:0}.download-mobile-notice strong{color:var(--text-primary, #ffffff)}.download-grid,#download-view .system-requirements-card{display:none}}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-danger{color:var(--error-color)}.text-success{color:var(--success-color)}.text-warning{color:var(--warning-yellow)}.text-info{color:var(--info-color)}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.hidden{display:none!important}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.m-0{margin:0}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.mt-5{margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:var(--spacing-xl)}.ml-0{margin-left:0}.ml-1{margin-left:var(--spacing-xs)}.ml-2{margin-left:var(--spacing-sm)}.ml-3{margin-left:var(--spacing-md)}.ml-4{margin-left:var(--spacing-lg)}.ml-5{margin-left:var(--spacing-xl)}.mr-0{margin-right:0}.mr-1{margin-right:var(--spacing-xs)}.mr-2{margin-right:var(--spacing-sm)}.mr-3{margin-right:var(--spacing-md)}.mr-4{margin-right:var(--spacing-lg)}.mr-5{margin-right:var(--spacing-xl)}.p-0{padding:0}.p-1{padding:var(--spacing-xs)}.p-2{padding:var(--spacing-sm)}.p-3{padding:var(--spacing-md)}.p-4{padding:var(--spacing-lg)}.p-5{padding:var(--spacing-xl)}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.flex-grow{flex-grow:1}.flex-grow-0{flex-grow:0}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.gap-0{gap:0}.gap-1{gap:var(--spacing-xs)}.gap-2{gap:var(--spacing-sm)}.gap-3{gap:var(--spacing-md)}.gap-4{gap:var(--spacing-lg)}.gap-5{gap:var(--spacing-xl)}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.min-w-0{min-width:0}.min-h-0{min-height:0}.btn-block{width:100%}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}.btn-lg{padding:var(--spacing-md) var(--spacing-lg);font-size:1.125rem}.border-0{border:0}.border{border:1px solid var(--border-default)}.border-t{border-top:1px solid var(--border-default)}.border-b{border-bottom:1px solid var(--border-default)}.border-l{border-left:1px solid var(--border-default)}.border-r{border-right:1px solid var(--border-default)}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.static{position:static}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-wait{cursor:wait}.cursor-not-allowed{cursor:not-allowed}.transition-none{transition:none}.transition-all{transition:all var(--transition-normal)}.transition-colors{transition:color var(--transition-normal),background-color var(--transition-normal),border-color var(--transition-normal)}.transition-transform{transition:transform var(--transition-normal)}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}@media print{.app-header,.sidebar,.user-menu-dropdown{display:none!important}.view-container{margin-left:0;margin-top:0}.dashboard-card,.settings-section,.billing-section,.support-section{break-inside:avoid;page-break-inside:avoid}}@media (max-width: 768px){#video-gallery{display:grid;grid-template-columns:1fr;gap:1rem;padding:1rem}#video-gallery .video-item,#video-gallery .video-card{width:100%;max-width:none}.cameras-count .label{display:none}.control-section button{width:100%}.plan-header{flex-direction:column;text-align:center;gap:10px}.plan-actions{width:100%}.history-item{grid-template-columns:1fr;gap:10px;padding:15px}.history-date,.history-amount,.history-status{font-size:14px}.history-actions{margin-top:10px}.management-item{grid-template-columns:1fr;gap:10px}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:var(--z-sidebar-overlay)}.sidebar-overlay.active{display:block}.app-header .hamburger-menu{display:flex}.dashboard-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.gallery-controls{flex-direction:column;gap:var(--spacing-md)}.search-box{width:100%}.filter-controls{width:100%;justify-content:space-between}.camera-preview-card{grid-column:span 1}.camera-grid{grid-template-columns:1fr;gap:var(--spacing-md);padding:var(--spacing-md)}.unified-bar{padding:var(--spacing-sm);flex-direction:column;gap:var(--spacing-xs)}.app-view{padding:var(--spacing-sm)}.control-section{justify-content:center}.recording-toggle-btn{flex:1;max-width:none}.view-header h1{font-size:1.5rem}.view-description{font-size:.9375rem;line-height:1.6}body{font-size:16px}.card-content,.dashboard-card p,.camera-card p{font-size:.9375rem;line-height:1.6}.btn,button{font-size:1rem}.nav-link{font-size:1rem;line-height:1.5}.status-item,label{font-size:.9375rem}.modal-content{max-width:98vw;max-height:98vh;margin:1vh}.modal-header{padding:10px 12px}.error-actions{flex-direction:column}.error-actions .btn{width:100%}}@media (min-width: 769px) and (max-width: 1000px){.sidebar:not(.mobile-open){width:80px;min-width:80px;max-width:80px;overflow:hidden}.sidebar:not(.mobile-open) .nav-text{display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;position:absolute!important;clip:rect(0,0,0,0)!important}.sidebar:not(.mobile-open) .nav-link{padding:var(--spacing-md);justify-content:center;overflow:hidden}.sidebar:not(.mobile-open) .nav-links{padding:0 var(--spacing-xs);overflow:hidden}.sidebar:not(.mobile-open) .sidebar-toggle{justify-content:center;padding:var(--spacing-md)}.sidebar:not(.mobile-open)~.view-container{margin-left:80px;width:calc(100% - 80px);max-width:calc(100% - 80px)}.app-view{padding:var(--spacing-sm) var(--spacing-md)}.unified-bar{padding:var(--spacing-sm) var(--spacing-md);flex-direction:column;height:auto;min-height:auto;gap:var(--spacing-sm);align-items:stretch}.status-section{flex-wrap:wrap;gap:var(--spacing-xs) var(--spacing-md);justify-content:flex-start}.status-section .status-item{flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.control-section{width:100%;justify-content:flex-end;gap:var(--spacing-sm)}.view-header h1{font-size:1.25rem;margin-bottom:var(--spacing-xs)}.sidebar:not(.mobile-open) .nav-link:after{content:attr(title);position:absolute;left:100%;top:50%;transform:translateY(-50%);background:var(--dark-surface-elevated);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);white-space:nowrap;margin-left:var(--spacing-xs);pointer-events:none;opacity:0;transition:opacity .2s ease;z-index:var(--z-tooltip);box-shadow:var(--shadow-lg)}.sidebar:not(.mobile-open) .nav-link:hover:after{opacity:1}}@media (min-width: 769px) and (max-width: 1200px){#video-gallery .video-item{width:calc(33.333% - 1rem)}}@media (max-width: 1000px){.download-grid{grid-template-columns:repeat(2,1fr);max-width:100%;width:100%}.requirements-columns{grid-template-columns:1fr}}@media (max-width: 768px){.download-grid{grid-template-columns:1fr;gap:var(--spacing-md);width:100%}}@media (max-width: 1200px){.agent-status-card,.local-storage-card,.storage-settings,.recording-settings,.notification-settings,.quick-links,.contact-support,.documentation,.system-info,.danger-zone,.support-card{grid-column:span 1}}:root{--breakpoint-xs: 480px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1400px;--breakpoint-2xl: 1600px;--breakpoint-3xl: 1920px;--breakpoint-4xl: 2200px;--breakpoint-5xl: 2560px}.dashboard-card,.download-card-compact,.contact-support-card,.community-card,.quick-help-card{padding:clamp(.75rem,1.5vw + .5rem,1.5rem)}.support-grid,.settings-grid,.download-grid,.account-grid,.billing-grid{gap:clamp(.75rem,1.5vw + .25rem,1.5rem)}.app-view{padding:clamp(.5rem,2vw,1.5rem)}.card-header{margin-bottom:clamp(.5rem,1vw + .25rem,1rem)}.card-header h3{font-size:clamp(.95rem,.5vw + .85rem,1.25rem)}.view-header h1{font-size:clamp(1.1rem,1vw + .85rem,1.75rem);margin-bottom:clamp(.25rem,.5vw,.5rem)}.view-description{font-size:clamp(.8rem,.25vw + .7rem,.9375rem);margin-bottom:clamp(.5rem,1vw,1rem)}.contact-support-card textarea{min-height:clamp(60px,8vh,120px)}.contact-support-card .form-group{margin-bottom:clamp(.375rem,.75vw,1rem)}.contact-support-card label{margin-bottom:clamp(.25rem,.5vw,.5rem)}.contact-support-card .btn{padding:clamp(.5rem,1vw,.75rem) clamp(1rem,2vw,1.5rem)}.support-description{margin-bottom:clamp(.5rem,1vw,1rem);font-size:clamp(.8rem,.25vw + .7rem,.85rem)}.help-link{padding:clamp(.5rem,1vw,1rem);font-size:clamp(.8rem,.25vw + .7rem,.9rem)}.community-link{padding:clamp(.5rem,1vw,1.5rem);gap:clamp(.375rem,.75vw,1rem)}.community-icon{width:clamp(28px,3vw + 12px,48px);height:clamp(28px,3vw + 12px,48px);font-size:clamp(1rem,.75vw + .65rem,2rem)}.community-title{font-size:clamp(.85rem,.25vw + .75rem,1rem);margin-bottom:clamp(.125rem,.25vw,.25rem)}.community-desc{font-size:clamp(.75rem,.2vw + .65rem,.9rem)}.download-card-compact .btn{min-height:clamp(36px,4vh,44px);padding:clamp(.375rem,.5vw + .25rem,.5rem) clamp(.5rem,1vw,.75rem);font-size:clamp(.8rem,.25vw + .7rem,.875rem)}.download-os-icon{width:clamp(24px,3vw + 8px,32px);height:clamp(24px,3vw + 8px,32px)}.download-card-compact h3{font-size:clamp(.85rem,.25vw + .75rem,1rem)}.download-description{font-size:clamp(.7rem,.2vw + .6rem,.75rem)}.requirements-columns{gap:clamp(.75rem,1.5vw + .25rem,1.5rem)}.req-column h3{font-size:clamp(.8rem,.25vw + .7rem,.9rem);margin-bottom:clamp(.25rem,.5vw,.5rem)}.req-column li{font-size:clamp(.75rem,.25vw + .65rem,.875rem);margin-bottom:clamp(.25rem,.5vw,.5rem)}.agent-item{padding:clamp(.75rem,1.5vw,1.25rem);gap:clamp(.5rem,1vw,.75rem)}.local-storage-card .form-group{margin-bottom:clamp(.5rem,1vw,.75rem)}.mobile-only{display:none}.desktop-only{display:block}@media (max-width: 768px){.mobile-only{display:block}.desktop-only{display:none}.mobile-hidden{display:none!important}.mobile-visible{display:block!important}.mobile-flex{display:flex!important}}@media (max-width: 768px){.mobile-text-center{text-align:center}.mobile-text-left{text-align:left}.mobile-text-right{text-align:right}}.touch-padding{padding:.75rem}@media (max-width: 768px){.touch-padding{padding:1rem}}.safe-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.no-tap-highlight{-webkit-tap-highlight-color:transparent}a,button,input,select,textarea,[role=button],[tabindex="0"]{min-height:44px}p a,li a{padding:.25rem 0;display:inline-block}*{-webkit-tap-highlight-color:rgba(0,255,137,.15);-webkit-touch-callout:none}.scrollable,.sidebar,.modal-body,.video-gallery,.camera-grid{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}body{overscroll-behavior-y:contain}@media (max-width: 768px){.view-container{overscroll-behavior:auto}}button,.btn,.control-record,.recording-toggle-btn{touch-action:manipulation}.btn,.nav-link,.card-header,.dashboard-card,.camera-card,.video-card{-webkit-user-select:none;user-select:none}.card-content,.modal-body,.description,p,li{-webkit-user-select:text;user-select:text}@media (hover: none) and (pointer: coarse){.btn:hover,.nav-link:hover,.camera-card:hover,.video-card:hover{transform:none}.btn:active,.nav-link:active{transform:scale(.98);opacity:.9}}@media (max-width: 768px){.button-group,.control-section,.form-actions{gap:1rem}.nav-links .nav-link{padding:1rem 1.25rem;margin-bottom:.25rem}.form-group{margin-bottom:1.25rem}input[type=checkbox],input[type=radio]{min-width:24px;min-height:24px;margin:.5rem}label{display:inline-block;padding:.5rem 0;cursor:pointer}}@media (max-width: 768px){@supports (padding: max(0px)){.app-header,.sidebar{padding-left:max(var(--spacing-lg),env(safe-area-inset-left));padding-right:max(var(--spacing-lg),env(safe-area-inset-right))}.view-container{padding-bottom:max(var(--spacing-lg),env(safe-area-inset-bottom))}.modal-content{margin-top:max(1rem,env(safe-area-inset-top));margin-bottom:max(1rem,env(safe-area-inset-bottom))}}}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],select,textarea{font-size:16px;min-height:44px}@media (max-width: 768px){input,select,textarea{padding:.75rem 1rem;border-radius:.5rem}input:focus,select:focus,textarea:focus{outline:3px solid var(--primary-green);outline-offset:2px}}.camera-card,.video-card,.modal,.sidebar{will-change:transform;backface-visibility:hidden;transform:translateZ(0)}.camera-card:not(.animating),.video-card:not(.animating){will-change:auto}@media (max-width: 768px) and (orientation: landscape){.app-header{height:56px}.app-view{padding:var(--spacing-sm)}.view-description{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.recording-toggle-btn[data-recording=true]{animation:none}.btn:hover{transform:none}}:focus-visible{outline:3px solid var(--primary-green);outline-offset:2px;border-radius:var(--radius-sm)}:focus:not(:focus-visible){outline:none}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}@media print{.app-header,.sidebar,.user-menu-dropdown,.sidebar-overlay,.btn,.button,button,.toggle-switch,.modal,.dropdown,.unified-bar,.status-section,.control-section,.recording-toggle-btn{display:none!important}input[type=checkbox],input[type=radio],select,textarea{border:1px solid #000!important}.view-container{margin-left:0!important;width:100%!important}.app-view{padding:0!important}.dashboard-card,.settings-section,.billing-section,.support-section,.event-item{border:1px solid #ccc;break-inside:avoid;page-break-inside:avoid}.dashboard-grid,.settings-grid,.billing-grid,.support-grid{grid-template-columns:1fr!important;gap:20px!important}body{font-size:12pt!important;line-height:1.5!important;color:#000!important;background:#fff!important}h1,h2,h3,h4,h5,h6{color:#000!important;page-break-after:avoid}a{color:#000!important;text-decoration:underline!important}a[href]:after{content:" (" attr(href) ")";font-size:.8em;font-style:italic}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}table{border-collapse:collapse!important;width:100%!important}table,th,td{border:1px solid #ccc!important}th,td{padding:8px!important;text-align:left!important}img{max-width:100%!important;height:auto!important}video,audio,iframe{display:none!important}*{background:transparent!important;box-shadow:none!important;text-shadow:none!important}.text-primary,.text-secondary,.text-muted,.text-danger,.text-success,.text-warning{color:#000!important}.status-indicator,.badge,.tag{border:1px solid #000!important;color:#000!important}@page{margin:1in;size:letter}@page :first{margin-top:.5in}}.video-container{position:relative;overflow:hidden;border-radius:var(--radius-md)}.loading-overlay,.error-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:#000c;color:#fff;z-index:10}.loading-content,.error-content{text-align:center;padding:var(--spacing-xl)}.error-icon{font-size:3rem;margin-bottom:var(--spacing-lg);color:var(--error-color)}.error-content h4{margin:0 0 var(--spacing-sm) 0;color:#fff;font-size:1.2rem}.error-content p{margin:0 0 var(--spacing-lg) 0;color:var(--text-secondary);font-size:.9rem}.error-actions{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}#modalVideo{width:100%;max-height:70vh;background:var(--dark-bg);border-radius:var(--radius-md);outline:none}.modal-controls{padding:var(--spacing-md) var(--spacing-lg);background:var(--dark-bg);display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-subtle)}.close-button{background:var(--error-color-soft);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);cursor:pointer;font-weight:600;transition:background var(--transition-normal)}.close-button:hover{background:var(--error-color)}.download-button{background:var(--primary-green-soft);color:var(--dark-bg);border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);cursor:pointer;font-weight:600;transition:background var(--transition-normal)}.download-button:hover{background:var(--primary-green)}@media (max-width: 768px){.error-actions{flex-direction:column}.error-actions .btn{width:100%}}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--primary-green);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible){outline:none}.notification{position:fixed;top:80px;right:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);padding:16px 20px;border-radius:8px;border-left:4px solid var(--notification-accent, #00a86b);background:var(--notification-bg, rgba(0, 168, 107, .15));box-shadow:0 4px 20px #00000080;z-index:var(--z-notification, 1100);opacity:0;transform:translate3d(100%,0,0);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);max-width:400px;display:flex;align-items:center;gap:12px;will-change:transform,opacity}.notification.notification-visible{opacity:1;transform:translateZ(0)}.notification.notification-hiding{will-change:auto;opacity:0;transform:translate3d(100%,0,0)}.notification-success{--notification-accent: var(--success-color);--notification-bg: rgba(16, 185, 129, .15)}.notification-error{--notification-accent: var(--danger-red-light);--notification-bg: rgba(255, 102, 102, .15)}.notification-warning{--notification-accent: var(--warning-amber);--notification-bg: rgba(255, 170, 0, .15)}.notification-info{--notification-accent: var(--primary-green);--notification-bg: rgba(0, 168, 107, .15)}.notification .notification-close{background:none;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;margin-left:auto;padding:4px 8px;line-height:1;border-radius:4px;transition:background-color .2s,color .2s}.notification .notification-close:hover{background-color:#ffffff1a;color:var(--text-primary)}@media (prefers-reduced-motion: reduce){.notification{transition:opacity .1s ease;transform:none}.notification.notification-visible,.notification.notification-hiding{transform:none}}.notification:nth-of-type(2){top:160px}.notification:nth-of-type(3){top:240px}.loading-overlay-fade{opacity:0;transition:opacity .2s ease}.loading-overlay-fade.loading-overlay-visible{opacity:1}
