.bluetooth-checker[data-v-a57d8bf3]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem;display:flex;align-items:center;justify-content:center}.container[data-v-a57d8bf3]{max-width:600px;width:100%}h1[data-v-a57d8bf3]{color:#fff;text-align:center;margin-bottom:2rem;font-size:2rem}.status-card[data-v-a57d8bf3],.info-card[data-v-a57d8bf3],.requirements-card[data-v-a57d8bf3]{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 10px 30px #0003;margin-bottom:1.5rem}.status-content[data-v-a57d8bf3]{text-align:center}.spinner[data-v-a57d8bf3]{border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;width:50px;height:50px;animation:spin-a57d8bf3 1s linear infinite;margin:0 auto 1rem}@keyframes spin-a57d8bf3{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon[data-v-a57d8bf3]{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:3rem;margin:0 auto 1rem;font-weight:700}.icon.success[data-v-a57d8bf3]{background:#10b981;color:#fff}.icon.error[data-v-a57d8bf3]{background:#ef4444;color:#fff}.success-text[data-v-a57d8bf3]{color:#10b981}.error-text[data-v-a57d8bf3]{color:#ef4444}h2[data-v-a57d8bf3]{margin-bottom:1rem}.description[data-v-a57d8bf3]{color:#666;line-height:1.6;margin-bottom:1.5rem}.check-btn[data-v-a57d8bf3]{background:#667eea;color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;cursor:pointer;transition:background .3s}.check-btn[data-v-a57d8bf3]:hover{background:#5568d3}h3[data-v-a57d8bf3]{color:#333;margin-bottom:1rem;font-size:1.25rem}ul[data-v-a57d8bf3]{list-style:none;padding:0}ul li[data-v-a57d8bf3]{padding:.5rem 0;color:#666;line-height:1.6}ul li strong[data-v-a57d8bf3]{color:#333}.requirements-card ul li[data-v-a57d8bf3]:before{content:"✓ ";color:#10b981;font-weight:700;margin-right:.5rem}.action-card[data-v-a57d8bf3]{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 10px 30px #0003;text-align:center}.scan-btn[data-v-a57d8bf3]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 3rem;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66}.scan-btn[data-v-a57d8bf3]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.scan-btn[data-v-a57d8bf3]:active{transform:translateY(0)}.ble-scanner[data-v-b574b74f]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.container[data-v-b574b74f]{max-width:800px;margin:0 auto}.header[data-v-b574b74f]{text-align:center;color:#fff;margin-bottom:30px}.header h1[data-v-b574b74f]{font-size:2.5rem;margin-bottom:10px;font-weight:700}.subtitle[data-v-b574b74f]{font-size:1.1rem;opacity:.9}.control-panel[data-v-b574b74f]{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap;justify-content:center}.scan-btn[data-v-b574b74f]{padding:14px 28px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;outline:none}.scan-btn.primary[data-v-b574b74f]{background:#fff;color:#667eea;box-shadow:0 4px 12px #00000026}.scan-btn.primary[data-v-b574b74f]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0003}.scan-btn.primary[data-v-b574b74f]:disabled{opacity:.6;cursor:not-allowed}.scan-btn.secondary[data-v-b574b74f]{background:#fff3;color:#fff;border:2px solid white}.scan-btn.secondary[data-v-b574b74f]:hover{background:#ffffff4d}.scan-btn.clear[data-v-b574b74f]{background:#ff3b30cc;color:#fff}.scan-btn.clear[data-v-b574b74f]:hover{background:#ff3b30}.error-message[data-v-b574b74f]{background:#ff3b30e6;color:#fff;padding:16px;border-radius:12px;margin-bottom:20px;display:flex;align-items:center;gap:10px;font-weight:500}.error-icon[data-v-b574b74f]{font-size:1.5rem}.warning-card[data-v-b574b74f]{background:#fff;border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 4px 20px #0000001a}.warning-card h3[data-v-b574b74f]{color:#ff3b30;margin-bottom:12px}.warning-card p[data-v-b574b74f]{color:#666;margin-bottom:16px}.requirements[data-v-b574b74f]{list-style:none;padding:0}.requirements li[data-v-b574b74f]{padding:8px 0 8px 24px;position:relative;color:#666}.requirements li[data-v-b574b74f]:before{content:"•";position:absolute;left:8px;color:#667eea;font-weight:700}.devices-section[data-v-b574b74f]{background:#fff;border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 4px 20px #0000001a;min-height:300px}.section-header[data-v-b574b74f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.section-header h2[data-v-b574b74f]{color:#333;font-size:1.5rem;margin:0}.device-count[data-v-b574b74f]{background:#667eea;color:#fff;padding:6px 14px;border-radius:20px;font-size:.9rem;font-weight:600}.empty-state[data-v-b574b74f],.scanning-state[data-v-b574b74f]{text-align:center;padding:60px 20px;color:#999}.empty-icon[data-v-b574b74f]{font-size:4rem;margin-bottom:16px}.empty-state p[data-v-b574b74f]{margin:8px 0;font-size:1.1rem}.empty-hint[data-v-b574b74f]{color:#bbb;font-size:.95rem!important}.scanning-state .spinner[data-v-b574b74f]{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin-b574b74f 1s linear infinite;margin:0 auto 20px}@keyframes spin-b574b74f{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.devices-list[data-v-b574b74f]{display:flex;flex-direction:column;gap:16px}.device-wrapper[data-v-b574b74f]{background:#f8f9fa;border-radius:12px;overflow:hidden;border:2px solid transparent;transition:border-color .3s ease}.device-wrapper[data-v-b574b74f]:hover{border-color:#667eea}.device-card[data-v-b574b74f]{display:flex;align-items:center;gap:16px;padding:16px;cursor:pointer;transition:all .3s ease}.device-card[data-v-b574b74f]:hover{background:#e9ecef}.device-icon[data-v-b574b74f]{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:10px}.device-info[data-v-b574b74f]{flex:1}.device-name[data-v-b574b74f]{color:#333;margin:0 0 6px;font-size:1.1rem;font-weight:600}.device-id[data-v-b574b74f]{color:#999;font-size:.85rem;margin:0 0 8px;font-family:monospace}.device-meta[data-v-b574b74f]{display:flex;gap:12px;align-items:center}.signal-strength[data-v-b574b74f]{font-size:.85rem;color:#666;background:#fff;padding:4px 10px;border-radius:6px}.connected-badge[data-v-b574b74f]{background:#34c759;color:#fff;padding:4px 10px;border-radius:6px;font-size:.8rem;font-weight:600}.loading-badge[data-v-b574b74f]{background:#ff9500;color:#fff;padding:4px 10px;border-radius:6px;font-size:.8rem;font-weight:600}.device-action[data-v-b574b74f]{color:#667eea;font-size:1.5rem;font-weight:300}.services-container[data-v-b574b74f]{background:#fff;border-top:1px solid #e0e0e0;padding:16px}.services-header[data-v-b574b74f]{margin-bottom:12px}.services-header h4[data-v-b574b74f]{color:#667eea;font-size:.95rem;margin:0;font-weight:600}.services-list[data-v-b574b74f]{display:flex;flex-direction:column;gap:12px}.service-item[data-v-b574b74f]{background:#f8f9fa;border-radius:8px;padding:12px;border-left:3px solid #667eea}.service-header[data-v-b574b74f]{display:flex;align-items:center;gap:10px;margin-bottom:8px}.service-icon[data-v-b574b74f]{font-size:1.2rem}.service-details[data-v-b574b74f]{flex:1}.service-uuid[data-v-b574b74f]{font-family:monospace;font-size:.85rem;color:#333;margin:0 0 4px;font-weight:600}.service-type[data-v-b574b74f]{font-size:.8rem;color:#666;margin:0}.characteristics-list[data-v-b574b74f]{margin-top:8px;padding-left:32px;display:flex;flex-direction:column;gap:8px}.characteristic-item[data-v-b574b74f]{display:flex;align-items:flex-start;gap:8px;background:#fff;padding:8px;border-radius:6px;transition:all .3s ease}.characteristic-item.has-notify[data-v-b574b74f]{cursor:pointer}.characteristic-item.listening[data-v-b574b74f]{background:#e3f2fd;border-left:3px solid #007aff;padding-left:5px}.char-icon[data-v-b574b74f]{font-size:.9rem}.char-details[data-v-b574b74f]{flex:1;display:flex;flex-direction:column;gap:8px}.char-header[data-v-b574b74f]{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%}.char-uuid[data-v-b574b74f]{font-family:monospace;font-size:.75rem;color:#666;margin:0;flex:1}.char-value[data-v-b574b74f]{background:#f8f9fa;padding:8px 10px;border-radius:4px;font-size:.7rem;display:flex;flex-direction:column;gap:6px}.value-row[data-v-b574b74f]{display:flex;gap:8px;align-items:flex-start}.value-label[data-v-b574b74f]{color:#667eea;font-weight:600;white-space:nowrap;min-width:40px}.value-content[data-v-b574b74f]{font-family:monospace;color:#333;word-break:break-all;flex:1}.value-content.hex[data-v-b574b74f]{color:#007aff}.value-content.text[data-v-b574b74f]{color:#34c759;font-weight:500}.char-properties[data-v-b574b74f]{display:flex;gap:4px}.prop-badge[data-v-b574b74f]{padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:600;color:#fff}.prop-badge.read[data-v-b574b74f]{background:#007aff}.prop-badge.write[data-v-b574b74f]{background:#34c759}.prop-badge.notify[data-v-b574b74f]{background:#ff9500}.prop-badge.clickable[data-v-b574b74f]{cursor:pointer;transition:all .2s ease}.prop-badge.clickable[data-v-b574b74f]:hover{transform:scale(1.1);box-shadow:0 2px 8px #0003}.prop-badge.notify.active[data-v-b574b74f]{background:#007aff;animation:pulse-b574b74f 2s ease-in-out infinite}@keyframes pulse-b574b74f{0%,to{opacity:1}50%{opacity:.7}}.info-section[data-v-b574b74f]{background:#fffffff2;border-radius:16px;padding:20px;box-shadow:0 4px 20px #0000001a}.info-section h3[data-v-b574b74f]{color:#333;margin-bottom:12px}.info-section p[data-v-b574b74f]{color:#666;line-height:1.6}@media(max-width:767px){.header h1[data-v-b574b74f]{font-size:2rem}.control-panel[data-v-b574b74f]{flex-direction:column}.scan-btn[data-v-b574b74f]{width:100%}.section-header[data-v-b574b74f]{flex-direction:column;align-items:flex-start;gap:12px}}@media(min-width:768px)and (max-width:1024px){.container[data-v-b574b74f]{max-width:90%}}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}input,textarea{-webkit-user-select:text;user-select:text}button,input,select,textarea{font-family:inherit;font-size:inherit;outline:none;border:none;background:none}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent}ul,ol{list-style:none}button{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}@supports (-webkit-touch-callout: none){body{min-height:-webkit-fill-available}*{touch-action:manipulation}}@media(min-width:768px)and (max-width:1024px){html{font-size:16px}}@media(max-width:767px){html{font-size:14px}body{overflow-x:hidden}}@supports (padding: max(0px)){body{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right));padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom))}}
