.container[data-v-95abc7e6]{min-height:100vh;display:flex;flex-direction:column;width:100%;position:relative;background:linear-gradient(135deg,#667eea,#764ba2)}.app-header[data-v-95abc7e6]{background:#fff;padding:16px 24px;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:100;flex-shrink:0}.header-content[data-v-95abc7e6]{display:flex;justify-content:space-between;align-items:center;max-width:1600px;margin:0 auto;width:100%}.header-left[data-v-95abc7e6]{flex:1}.app-title[data-v-95abc7e6]{font-size:24px;font-weight:700;color:#2c3e50;margin-bottom:4px}.app-subtitle[data-v-95abc7e6]{font-size:14px;color:#7f8c8d;margin:0}.header-right[data-v-95abc7e6]{display:flex;align-items:center;gap:20px}.status-indicator[data-v-95abc7e6]{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500;background:#f8f9fa}.status-dot[data-v-95abc7e6]{width:10px;height:10px;border-radius:50%;background:#95a5a6}.status-indicator.status-active .status-dot[data-v-95abc7e6]{background:#2ecc71;animation:pulse-95abc7e6 2s infinite}.status-indicator.status-paused .status-dot[data-v-95abc7e6]{background:#f39c12}.status-indicator.status-error .status-dot[data-v-95abc7e6]{background:#e74c3c}.status-indicator.status-inactive .status-dot[data-v-95abc7e6]{background:#95a5a6}.current-time[data-v-95abc7e6]{font-family:Courier New,monospace;font-size:16px;font-weight:600;color:#2c3e50;padding:8px 16px;background:#f8f9fa;border-radius:8px}.btn-settings[data-v-95abc7e6]{width:40px;height:40px;border:none;border-radius:50%;background:#f8f9fa;color:#2c3e50;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.btn-settings[data-v-95abc7e6]:hover{background:#e9ecef;transform:rotate(90deg);box-shadow:0 4px 12px #00000026}.btn-settings[data-v-95abc7e6]:active{transform:rotate(90deg) scale(.95)}.settings-menu-overlay[data-v-95abc7e6]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn-95abc7e6 .3s ease}.settings-menu[data-v-95abc7e6]{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;animation:slideIn-95abc7e6 .3s ease}.menu-header[data-v-95abc7e6]{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e9ecef;position:sticky;top:0;background:#fff;z-index:10}.menu-header h3[data-v-95abc7e6]{margin:0;color:#2c3e50;font-size:18px;font-weight:600}.btn-close[data-v-95abc7e6]{width:32px;height:32px;border:none;border-radius:50%;background:#f8f9fa;color:#7f8c8d;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.btn-close[data-v-95abc7e6]:hover{background:#e9ecef;color:#2c3e50}.menu-content[data-v-95abc7e6]{padding:20px;overflow-y:auto;flex:1;max-height:calc(80vh - 72px)}.setting-group[data-v-95abc7e6]{margin-bottom:24px;padding:16px;background:#f8f9fa;border-radius:8px}.setting-title[data-v-95abc7e6]{margin:0 0 16px;color:#2c3e50;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.setting-item[data-v-95abc7e6]{margin-bottom:16px;display:flex;align-items:center;gap:12px}.setting-label[data-v-95abc7e6]{font-size:14px;color:#2c3e50;font-weight:500;min-width:100px}.setting-input[data-v-95abc7e6]{flex:1;padding:8px 12px;border:1px solid #dee2e6;border-radius:6px;font-size:14px;color:#2c3e50;transition:all .3s ease}.setting-input[data-v-95abc7e6]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.setting-slider[data-v-95abc7e6]{flex:1;height:6px;border-radius:3px;background:#dee2e6;outline:none;-webkit-appearance:none}.setting-slider[data-v-95abc7e6]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#667eea;cursor:pointer;transition:all .3s ease}.setting-slider[data-v-95abc7e6]::-webkit-slider-thumb:hover{background:#5a6fd8;transform:scale(1.2)}.setting-slider[data-v-95abc7e6]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#667eea;cursor:pointer;border:none;transition:all .3s ease}.setting-slider[data-v-95abc7e6]::-moz-range-thumb:hover{background:#5a6fd8;transform:scale(1.2)}.slider-value[data-v-95abc7e6]{min-width:30px;text-align:center;font-size:14px;font-weight:600;color:#667eea}.setting-checkbox[data-v-95abc7e6]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#2c3e50}.checkbox-custom[data-v-95abc7e6]{width:18px;height:18px;border:2px solid #dee2e6;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;background:#fff}.checkbox-input:checked+.checkbox-custom[data-v-95abc7e6]{background:#667eea;border-color:#667eea}.checkbox-label[data-v-95abc7e6]{font-size:14px;color:#2c3e50;font-weight:500}.btn-primary[data-v-95abc7e6]{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary[data-v-95abc7e6]:hover{background:#5a6fd8;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-danger[data-v-95abc7e6]{padding:8px 16px;background:#e74c3c;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-danger[data-v-95abc7e6]:hover{background:#c0392b;transform:translateY(-2px);box-shadow:0 4px 12px #e74c3c4d}.btn-save[data-v-95abc7e6]{padding:8px 16px;background:#2ecc71;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-save[data-v-95abc7e6]:hover{background:#27ae60;transform:translateY(-2px);box-shadow:0 4px 12px #2ecc714d}@keyframes slideIn-95abc7e6{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.main-content[data-v-95abc7e6]{flex:1;padding:24px;max-width:1600px;margin:0 auto;width:100%;min-height:calc(100vh - 140px);display:flex;flex-direction:column}.dashboard-grid[data-v-95abc7e6]{display:grid;grid-template-columns:1fr 1fr;gap:24px;flex:1}@media (max-width: 1400px){.dashboard-grid[data-v-95abc7e6]{grid-template-columns:1fr 1fr;grid-template-rows:auto auto}.settings-section[data-v-95abc7e6]{grid-column:1 / -1}}@media (max-width: 1024px){.dashboard-grid[data-v-95abc7e6]{grid-template-columns:1fr}}.camera-card[data-v-95abc7e6],.analysis-log[data-v-95abc7e6],.current-analysis[data-v-95abc7e6],.settings-card[data-v-95abc7e6]{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow:hidden;display:flex;flex-direction:column}.card-header[data-v-95abc7e6]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.card-header h3[data-v-95abc7e6]{margin:0;font-size:18px;font-weight:600;color:#2c3e50;display:flex;align-items:center;gap:8px}.camera-container[data-v-95abc7e6]{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;overflow:hidden;border-radius:0;flex-shrink:0}.camera-feed[data-v-95abc7e6]{width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .3s}.camera-feed.camera-active[data-v-95abc7e6]{opacity:1}.camera-placeholder[data-v-95abc7e6]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2)}.placeholder-icon[data-v-95abc7e6]{font-size:64px;margin-bottom:16px;opacity:.8}.placeholder-text[data-v-95abc7e6]{margin-bottom:24px;font-size:16px;opacity:.9}.camera-error[data-v-95abc7e6]{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ff6b6b,#c92a2a);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;padding:30px;text-align:center;z-index:10}.error-icon[data-v-95abc7e6]{font-size:64px;margin-bottom:20px}.camera-error h3[data-v-95abc7e6]{margin:0 0 15px;font-size:24px}.error-message[data-v-95abc7e6]{margin:0 0 25px;font-size:16px;opacity:.9;max-width:600px;line-height:1.5}.error-solutions[data-v-95abc7e6]{background:#ffffff1a;padding:20px;border-radius:10px;margin:20px 0;text-align:left;max-width:500px}.error-solutions p[data-v-95abc7e6]{margin:0 0 10px;font-weight:700}.error-solutions ul[data-v-95abc7e6]{margin:0;padding-left:20px}.error-solutions li[data-v-95abc7e6]{margin:5px 0;font-size:14px}.btn-retry[data-v-95abc7e6]{margin-top:20px;padding:12px 30px;background:#fff;color:#c92a2a;border:none;border-radius:25px;font-weight:700;font-size:16px;cursor:pointer;transition:all .3s}.btn-retry[data-v-95abc7e6]:hover{background:#f8f9fa;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.activity-overlay[data-v-95abc7e6]{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffc107cc;display:flex;align-items:center;justify-content:center;animation:fadeIn-95abc7e6 .3s;z-index:5}.activity-overlay .overlay-content[data-v-95abc7e6]{background:#fff;padding:24px;border-radius:12px;text-align:center;max-width:80%;box-shadow:0 8px 32px #0000004d}.activity-overlay .overlay-icon[data-v-95abc7e6]{font-size:48px;margin-bottom:16px;color:#ff9800}.activity-overlay h4[data-v-95abc7e6]{margin:0 0 8px;color:#ff9800}.activity-overlay p[data-v-95abc7e6]{margin:0;color:#666;line-height:1.5}.camera-controls[data-v-95abc7e6]{display:flex;gap:20px;padding:16px 24px;background:#f8f9fa;border-top:1px solid #eee}.control-group[data-v-95abc7e6]{display:flex;align-items:center;gap:8px;flex:1}.control-label[data-v-95abc7e6]{font-size:14px;color:#666;white-space:nowrap}.control-select[data-v-95abc7e6]{padding:6px 12px;border:1px solid #ddd;border-radius:6px;background:#fff;font-size:14px;flex:1;min-width:0}.stats-grid[data-v-95abc7e6]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px;flex-shrink:0}.stat-card[data-v-95abc7e6]{display:flex;align-items:center;gap:16px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;border-left:4px solid #ddd;transition:transform .2s,box-shadow .2s}.stat-card[data-v-95abc7e6]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card.stat-good[data-v-95abc7e6]{border-left-color:#2ecc71;background:linear-gradient(135deg,#f1f8e9,#e8f5e9)}.stat-card.stat-warning[data-v-95abc7e6]{border-left-color:#f39c12;background:linear-gradient(135deg,#fff3e0,#ffecb3)}.stat-card.stat-alert[data-v-95abc7e6]{border-left-color:#e74c3c;background:linear-gradient(135deg,#ffebee,#ffcdd2)}.stat-card.stat-total[data-v-95abc7e6]{border-left-color:#3498db;background:linear-gradient(135deg,#e3f2fd,#bbdefb)}.stat-icon[data-v-95abc7e6]{font-size:32px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a}.stat-content[data-v-95abc7e6]{flex:1}.stat-value[data-v-95abc7e6]{font-size:28px;font-weight:700;color:#2c3e50;line-height:1;margin-bottom:4px}.stat-label[data-v-95abc7e6]{font-size:14px;color:#7f8c8d}.current-analysis[data-v-95abc7e6]{flex:1;margin-bottom:24px;display:flex;flex-direction:column;min-height:300px}.last-update[data-v-95abc7e6]{font-size:12px;color:#95a5a6}.analysis-result[data-v-95abc7e6]{padding:20px;display:flex;flex-direction:column;gap:20px;flex:1}.result-section[data-v-95abc7e6]{padding:20px;border-radius:10px;border:1px solid #eee;transition:all .3s;flex:1}.result-section.result-good[data-v-95abc7e6]{background:#f1f8e9;border-color:#c5e1a5}.result-section.result-warning[data-v-95abc7e6]{background:#fff3e0;border-color:#ffcc80}.result-section.result-alert[data-v-95abc7e6]{background:#ffebee;border-color:#ef9a9a}.result-section.result-normal[data-v-95abc7e6]{background:#e3f2fd;border-color:#90caf9}.result-header[data-v-95abc7e6]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.result-icon[data-v-95abc7e6]{font-size:24px}.result-header h4[data-v-95abc7e6]{margin:0;font-size:16px;color:#2c3e50}.result-content[data-v-95abc7e6]{font-size:14px;color:#555;flex:1}.result-desc[data-v-95abc7e6]{margin:0 0 12px;line-height:1.6}.result-issues[data-v-95abc7e6],.result-advice[data-v-95abc7e6],.result-meta[data-v-95abc7e6]{margin-top:12px;padding-top:12px;border-top:1px dashed rgba(0,0,0,.1);font-size:13px}.issues-label[data-v-95abc7e6],.advice-label[data-v-95abc7e6],.meta-label[data-v-95abc7e6]{font-weight:600;color:#666;margin-right:4px}.issues-list[data-v-95abc7e6],.advice-text[data-v-95abc7e6],.meta-value[data-v-95abc7e6]{color:#444}.meta-item[data-v-95abc7e6]{display:inline-block;margin-right:20px}.meta-value.notify-yes[data-v-95abc7e6]{color:#e74c3c;font-weight:600}.meta-value.notify-no[data-v-95abc7e6]{color:#2ecc71;font-weight:600}.analysis-placeholder[data-v-95abc7e6]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#95a5a6}.analysis-placeholder .placeholder-icon[data-v-95abc7e6]{font-size:48px;margin-bottom:16px;opacity:.5}.placeholder-hint[data-v-95abc7e6]{font-size:14px;margin-top:8px;opacity:.7}.analysis-log[data-v-95abc7e6]{display:flex;flex-direction:column;height:400px;min-height:400px;max-height:400px}.log-container-scroll[data-v-95abc7e6]{flex:1;min-height:0;overflow:hidden;padding:0}.log-container-inner[data-v-95abc7e6]{height:100%;overflow-y:auto;padding:0;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#cbd5e0 transparent}.log-container-inner[data-v-95abc7e6]::-webkit-scrollbar{width:6px}.log-container-inner[data-v-95abc7e6]::-webkit-scrollbar-track{background:transparent}.log-container-inner[data-v-95abc7e6]::-webkit-scrollbar-thumb{background-color:#cbd5e0;border-radius:3px}.log-container-inner[data-v-95abc7e6]::-webkit-scrollbar-thumb:hover{background-color:#94a3b8}.log-entry[data-v-95abc7e6]{display:flex;align-items:center;padding:12px 24px;border-bottom:1px solid #f0f0f0;transition:background .2s;min-height:44px}.log-entry[data-v-95abc7e6]:hover{background:#fafafa}.log-entry.good[data-v-95abc7e6]{border-left:4px solid #2ecc71;background:#f9fdf7}.log-entry.warning[data-v-95abc7e6]{border-left:4px solid #f39c12;background:#fffaf0}.log-entry.alert[data-v-95abc7e6]{border-left:4px solid #e74c3c;background:#fff5f5}.log-entry.error[data-v-95abc7e6]{border-left:4px solid #9b59b6;background:#f9f0ff}.log-entry.info[data-v-95abc7e6]{border-left:4px solid #3498db;background:#f0f8ff}.log-time[data-v-95abc7e6]{font-family:Courier New,monospace;font-size:12px;color:#95a5a6;min-width:70px}.log-message[data-v-95abc7e6]{flex:1;font-size:14px;color:#333;line-height:1.4}.log-notified[data-v-95abc7e6]{display:flex;align-items:center;gap:4px;font-size:12px;color:#e74c3c;background:#e74c3c1a;padding:2px 8px;border-radius:10px}.notified-icon[data-v-95abc7e6]{font-size:10px}.log-empty[data-v-95abc7e6]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#bdc3c7}.log-empty .empty-icon[data-v-95abc7e6]{font-size:48px;margin-bottom:16px;opacity:.5}.settings-section[data-v-95abc7e6]{display:flex;flex-direction:column}.settings-card[data-v-95abc7e6]{flex:1;display:flex;flex-direction:column}.settings-content[data-v-95abc7e6]{flex:1;padding:24px;overflow-y:auto;-webkit-overflow-scrolling:touch}.setting-group[data-v-95abc7e6]{margin-bottom:32px}.setting-group[data-v-95abc7e6]:last-child{margin-bottom:0}.setting-title[data-v-95abc7e6]{font-size:16px;font-weight:600;color:#2c3e50;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #f0f0f0}.setting-item[data-v-95abc7e6]{margin-bottom:20px}.setting-item[data-v-95abc7e6]:last-child{margin-bottom:0}.setting-label[data-v-95abc7e6]{display:block;font-size:14px;font-weight:500;color:#555;margin-bottom:8px}.setting-input[data-v-95abc7e6]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.setting-input[data-v-95abc7e6]:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.webhook-input-group[data-v-95abc7e6]{display:flex;gap:8px;align-items:center}.webhook-input-group .setting-input[data-v-95abc7e6]{flex:1}.btn-help[data-v-95abc7e6]{width:36px;height:36px;font-size:18px;border:none;border-radius:6px;background-color:#f8f9fa;color:#6c757d;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-help[data-v-95abc7e6]:hover{background-color:#e9ecef;color:#495057;transform:scale(1.05)}.setting-hint[data-v-95abc7e6]{font-size:12px;color:#95a5a6;margin-top:4px;line-height:1.4}.setting-checkbox[data-v-95abc7e6]{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:#555;-webkit-user-select:none;user-select:none;min-height:44px}.checkbox-input[data-v-95abc7e6]{display:none}.checkbox-custom[data-v-95abc7e6]{width:20px;height:20px;border:2px solid #ddd;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.checkbox-input:checked+.checkbox-custom[data-v-95abc7e6]{background:#3498db;border-color:#3498db}.checkbox-input:checked+.checkbox-custom[data-v-95abc7e6]:after{content:"✓";color:#fff;font-size:12px;font-weight:700}.checkbox-label[data-v-95abc7e6]{flex:1}.sensitivity-control[data-v-95abc7e6]{display:flex;flex-direction:column;gap:8px}.sensitivity-slider[data-v-95abc7e6]{width:100%;height:6px;border-radius:3px;background:#ddd;outline:none;-webkit-appearance:none}.sensitivity-slider[data-v-95abc7e6]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:#3498db;cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.sensitivity-slider[data-v-95abc7e6]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#3498db;cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.sensitivity-labels[data-v-95abc7e6]{display:flex;justify-content:space-between;font-size:12px;color:#95a5a6}.label-current[data-v-95abc7e6]{color:#3498db;font-weight:600}.notification-conditions[data-v-95abc7e6]{display:flex;flex-direction:column;gap:12px;padding:16px;background:#f8f9fa;border-radius:8px;border:1px solid #eee}.condition-checkbox[data-v-95abc7e6]{display:flex;align-items:center;gap:10px;font-size:14px;color:#555;cursor:pointer;min-height:44px}.condition-checkbox input[type=checkbox][data-v-95abc7e6]{width:16px;height:16px}.setting-actions[data-v-95abc7e6]{display:flex;flex-direction:column;gap:12px}.btn-block[data-v-95abc7e6]{width:100%;justify-content:center}button[data-v-95abc7e6]{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;outline:none;min-height:44px;-webkit-tap-highlight-color:transparent}button[data-v-95abc7e6]:disabled{opacity:.6;cursor:not-allowed}.btn-monitor[data-v-95abc7e6]{background:#3498db;color:#fff;padding:12px 24px;font-size:15px;font-weight:600}.btn-monitor[data-v-95abc7e6]:hover:not(:disabled){background:#2980b9;transform:translateY(-1px)}.btn-monitor.btn-active[data-v-95abc7e6]{background:#e74c3c}.btn-monitor.btn-active[data-v-95abc7e6]:hover:not(:disabled){background:#c0392b}.btn-primary[data-v-95abc7e6]{background:#3498db;color:#fff}.btn-primary[data-v-95abc7e6]:hover:not(:disabled){background:#2980b9;transform:translateY(-1px)}.btn-secondary[data-v-95abc7e6]{background:#95a5a6;color:#fff}.btn-secondary[data-v-95abc7e6]:hover:not(:disabled){background:#7f8c8d;transform:translateY(-1px)}.btn-outline[data-v-95abc7e6]{background:transparent;color:#3498db;border:2px solid #3498db}.btn-outline[data-v-95abc7e6]:hover:not(:disabled){background:#f0f8ff}.btn-test[data-v-95abc7e6]{background:#9b59b6;color:#fff}.btn-test[data-v-95abc7e6]:hover:not(:disabled){background:#8e44ad;transform:translateY(-1px)}.btn-text[data-v-95abc7e6]{background:transparent;color:#7f8c8d;padding:6px 12px;min-height:auto}.btn-text[data-v-95abc7e6]:hover:not(:disabled){background:#f8f9fa;color:#555}.btn-icon[data-v-95abc7e6]{font-size:16px}.alert-modal-overlay[data-v-95abc7e6],.modal-overlay[data-v-95abc7e6]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn-95abc7e6 .3s;padding:20px}.alert-modal[data-v-95abc7e6]{background:#fff;padding:40px;border-radius:16px;text-align:center;max-width:400px;width:100%;box-shadow:0 20px 40px #0003;animation:slideUp-95abc7e6 .3s ease}.alert-icon[data-v-95abc7e6]{font-size:64px;margin-bottom:20px}.alert-title[data-v-95abc7e6]{margin:0 0 12px;color:#2c3e50;font-size:20px}.alert-message[data-v-95abc7e6]{margin:0 0 24px;color:#666;line-height:1.5}.alert-button[data-v-95abc7e6]{background:#3498db;color:#fff;padding:12px 32px;font-size:16px;border-radius:8px}.alert-button[data-v-95abc7e6]:hover{background:#2980b9}.modal-content[data-v-95abc7e6]{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003;animation:slideUp-95abc7e6 .3s ease}.modal-header[data-v-95abc7e6]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.modal-header h3[data-v-95abc7e6]{margin:0;font-size:18px;color:#2c3e50}.modal-close[data-v-95abc7e6]{background:transparent;border:none;font-size:24px;color:#95a5a6;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;min-height:auto}.modal-close[data-v-95abc7e6]:hover{background:#f8f9fa;color:#e74c3c}.modal-body[data-v-95abc7e6]{flex:1;padding:24px;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-image[data-v-95abc7e6]{width:100%;border-radius:8px;box-shadow:0 4px 12px #0000001a}.test-result[data-v-95abc7e6]{margin-top:16px;padding:16px;border-radius:8px;text-align:center;font-weight:500}.test-result.success[data-v-95abc7e6]{background:#f1f8e9;color:#2ecc71;border:1px solid #c5e1a5}.test-result.error[data-v-95abc7e6]{background:#ffebee;color:#e74c3c;border:1px solid #ef9a9a}@keyframes fadeIn-95abc7e6{0%{opacity:0}to{opacity:1}}@keyframes slideUp-95abc7e6{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse-95abc7e6{0%,to{opacity:1}50%{opacity:.5}}.fade-in[data-v-95abc7e6]{animation:fadeIn-95abc7e6 .5s ease-in}.slide-up[data-v-95abc7e6]{animation:slideUp-95abc7e6 .5s ease-out}.log-container-inner[data-v-95abc7e6],.settings-content[data-v-95abc7e6],.modal-body[data-v-95abc7e6]{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.dingtalk-help-modal[data-v-95abc7e6]{max-width:800px}.dingtalk-help-modal .modal-header h3[data-v-95abc7e6]{font-size:20px;color:#2c3e50}.help-content[data-v-95abc7e6]{line-height:1.6}.help-content h4[data-v-95abc7e6]{margin:24px 0 16px;color:#34495e;font-size:16px}.help-steps[data-v-95abc7e6]{margin:20px 0}.help-step[data-v-95abc7e6]{display:flex;gap:16px;margin-bottom:16px;align-items:flex-start}.step-number[data-v-95abc7e6]{width:32px;height:32px;background:#3498db;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.step-content[data-v-95abc7e6]{flex:1}.step-content p[data-v-95abc7e6]{margin:0;color:#555}.help-image[data-v-95abc7e6]{margin:24px 0;text-align:center}.help-image img[data-v-95abc7e6]{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px #0000001a}.help-note[data-v-95abc7e6]{margin:24px 0;padding:16px;background:#f8f9fa;border-radius:8px;border-left:4px solid #3498db}.help-note ul[data-v-95abc7e6]{margin:8px 0 0;padding-left:20px}.help-note li[data-v-95abc7e6]{margin-bottom:8px;color:#555}.help-note li[data-v-95abc7e6]:last-child{margin-bottom:0}.app-footer[data-v-95abc7e6]{background:linear-gradient(135deg,#667eea,#764ba2);padding:20px 0;margin-top:auto;border-top:1px solid rgba(255,255,255,.1)}.footer-content[data-v-95abc7e6]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;max-width:1400px;margin:0 auto;padding:0 24px}.footer-section[data-v-95abc7e6]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.footer-text[data-v-95abc7e6]{color:#ffffffe6;font-size:14px}.footer-divider[data-v-95abc7e6]{color:#ffffff80;font-size:14px}.footer-link[data-v-95abc7e6]{color:#ffffffe6;text-decoration:none;font-size:14px;transition:color .2s;cursor:pointer}.footer-link[data-v-95abc7e6]:hover{color:#fff;text-decoration:underline}.donate-modal[data-v-95abc7e6]{max-width:800px}.donate-text[data-v-95abc7e6]{font-size:18px;font-weight:600;color:#2c3e50;margin-bottom:12px;text-align:center}.donate-desc[data-v-95abc7e6]{color:#7f8c8d;margin-bottom:24px;text-align:center;line-height:1.6}.donate-qr-container[data-v-95abc7e6]{display:flex;gap:32px;justify-content:center;margin-bottom:24px;flex-wrap:wrap}.qr-card[data-v-95abc7e6]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 12px #00000014;text-align:center;min-width:250px}.qr-title[data-v-95abc7e6]{font-size:16px;font-weight:600;color:#2c3e50;margin-bottom:16px}.qr-tip[data-v-95abc7e6]{font-size:12px;color:#7f8c8d;margin-top:16px;margin-bottom:8px}.donate-amount-selector[data-v-95abc7e6]{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;justify-content:center}.amount-btn[data-v-95abc7e6]{padding:10px 20px;border:2px solid #e5e7eb;background:#fff;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;color:#4b5563;transition:all .2s;min-width:80px}.amount-btn[data-v-95abc7e6]:hover{border-color:#3b82f6;color:#3b82f6}.amount-btn.amount-selected[data-v-95abc7e6]{border-color:#3b82f6;background:#3b82f6;color:#fff}.amount-input[data-v-95abc7e6]{padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;width:120px;text-align:center;transition:border-color .2s}.amount-input[data-v-95abc7e6]:focus{outline:none;border-color:#3b82f6}.donate-placeholder[data-v-95abc7e6]{display:flex;justify-content:center;margin-bottom:20px}.qr-placeholder[data-v-95abc7e6]{width:200px;height:200px;border:2px dashed #d1d5db;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#f9fafb}.payment-qr[data-v-95abc7e6]{width:100%;height:100%;aspect-ratio:1 / 1;object-fit:contain;border-radius:8px;border:2px solid #e5e7eb;cursor:pointer;transition:transform .2s ease}.payment-qr[data-v-95abc7e6]:hover{transform:scale(1.05)}.enlarged-image-modal[data-v-95abc7e6]{max-width:80vw;max-height:90vh;width:auto;height:auto;display:flex;flex-direction:column}.enlarged-image-body[data-v-95abc7e6]{padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}.enlarged-image-container[data-v-95abc7e6]{max-width:100%;max-height:60vh;overflow:auto;padding:16px;background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014}.enlarged-image[data-v-95abc7e6]{max-width:100%;max-height:60vh;object-fit:contain;border-radius:8px}.enlarged-image-actions[data-v-95abc7e6]{display:flex;gap:16px;justify-content:center}.action-button[data-v-95abc7e6]{padding:12px 24px;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .2s}.save-button[data-v-95abc7e6]{background:#3b82f6;color:#fff}.save-button[data-v-95abc7e6]:hover{background:#2563eb}.close-button[data-v-95abc7e6]{background:#6b7280;color:#fff}.close-button[data-v-95abc7e6]:hover{background:#4b5563}.action-button .icon[data-v-95abc7e6]{font-size:16px}.payment-info[data-v-95abc7e6]{margin-top:20px;text-align:center}.payment-amount[data-v-95abc7e6]{font-size:20px;font-weight:600;color:#2c3e50;margin-bottom:8px}.payment-order-no[data-v-95abc7e6]{font-size:12px;color:#6b7280;margin-bottom:16px;word-break:break-all}.qr-icon[data-v-95abc7e6]{font-size:48px;opacity:.5}.qr-placeholder p[data-v-95abc7e6]{color:#9ca3af;font-size:14px;margin:0}.donate-tip[data-v-95abc7e6]{text-align:center;color:#3b82f6;font-size:14px;margin:0}.payment-result-icon[data-v-95abc7e6]{font-size:64px;text-align:center;margin-bottom:20px}.payment-result-message[data-v-95abc7e6]{text-align:center;font-size:16px;color:#2c3e50;margin-bottom:24px;line-height:1.6}.payment-result-details[data-v-95abc7e6]{background:#f9fafb;padding:16px;border-radius:8px;margin-bottom:20px}.payment-result-details p[data-v-95abc7e6]{margin:8px 0;font-size:14px;color:#4b5563}@media (max-width: 768px){.footer-content[data-v-95abc7e6]{flex-direction:column;text-align:center}.footer-section[data-v-95abc7e6]{justify-content:center}.footer-text[data-v-95abc7e6],.footer-link[data-v-95abc7e6]{font-size:12px}}@media (max-width: 768px){.camera-card[data-v-95abc7e6],.analysis-log[data-v-95abc7e6],.current-analysis[data-v-95abc7e6],.settings-card[data-v-95abc7e6],.stat-card[data-v-95abc7e6]{box-shadow:0 2px 6px #0000001a}button[data-v-95abc7e6]{box-shadow:0 2px 4px #0000001a}}@media (max-width: 768px){.camera-feed[data-v-95abc7e6],.stat-card[data-v-95abc7e6],button[data-v-95abc7e6],.log-entry[data-v-95abc7e6]{transition:none}}*{margin:0;padding:0;box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.6;color:#333;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}#app{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:fadeIn .5s ease-in}.slide-up{animation:slideUp .5s ease-out}
