.App{min-height:100vh;position:relative}.confirm-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.confirm-modal{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:10px;box-shadow:0 4px 20px #0003;padding:25px;width:350px}.confirm-content p{color:#fff;font-size:16px;margin-bottom:20px;text-align:center}.confirm-buttons{display:flex;justify-content:space-around}.cancel-button,.confirm-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px}.confirm-button{background-color:#f00c;color:#fff;padding:10px 20px}.confirm-button:hover{background-color:red}.cancel-button{background-color:#ffffff4d;color:#fff;padding:10px 20px}.cancel-button:hover{background-color:#ffffff80}.image-item{position:relative;transition:transform .3s}.image-item.multi-select-mode{cursor:pointer}.image-item.selected{border:3px solid #007bff;box-shadow:0 0 10px #007bff4d;transform:scale(.98)}.image-item.multi-select-mode:hover{transform:scale(1.02)}.selection-overlay{left:8px;position:absolute;top:8px;z-index:2}.selection-checkbox{align-items:center;background-color:#0006;border:2px solid #fff;border-radius:4px;box-shadow:0 1px 3px #0000004d;display:flex;height:24px;justify-content:center;transition:all .2s ease;width:24px}.selection-checkbox.checked{background-color:#007bff;border-color:#007bff}.checkmark{color:#fff;font-size:14px;font-weight:700}.batch-operation-bar{align-items:center;background-color:#f8f9fa;border-top:1px solid #dee2e6;bottom:0;box-shadow:0 -2px 4px #0000001a;display:flex;justify-content:space-between;left:0;padding:12px 16px;position:fixed;right:0;z-index:1000}.batch-info{color:#495057;font-size:14px;font-weight:500}.batch-actions{display:flex;gap:8px}.batch-btn{background-color:#fff;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;font-size:14px;min-width:50px;padding:6px 12px;transition:all .2s ease}.batch-btn:hover:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.batch-btn:disabled{cursor:not-allowed;opacity:.6}.batch-btn.download-btn{background-color:#28a745;border-color:#28a745;color:#fff}.batch-btn.download-btn:hover:not(:disabled){background-color:#218838}.batch-btn.delete-btn{background-color:#dc3545;border-color:#dc3545;color:#fff}.batch-btn.delete-btn:hover:not(:disabled){background-color:#c82333}.batch-btn.select-all-btn{background-color:#007bff;border-color:#007bff;color:#fff}.batch-btn.select-all-btn:hover:not(:disabled){background-color:#0056b3}.batch-btn.cancel-btn{background-color:#6c757d;border-color:#6c757d;color:#fff}.batch-btn.cancel-btn:hover:not(:disabled){background-color:#545b62}.placeholder{background-color:#f0f0f0;height:200px;width:100%}.image-loading{background-color:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;color:#6c757d;gap:10px}.image-error,.image-loading{align-items:center;display:flex;flex-direction:column;font-size:14px;height:200px;justify-content:center;width:100%}.image-error{background-color:#f8d7da;border:2px dashed #f5c6cb;border-radius:8px;color:#721c24}.loading-spinner{border:2px solid #dee2e6}@keyframes shake{0%{transform:translate(1px,1px) rotate(0deg)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0deg)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0deg)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0deg)}to{transform:translate(1px,-2px) rotate(-1deg)}}.shaking{animation:shake .5s;animation-iteration-count:infinite}.delete-button{align-items:center;background-color:#f00c;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:24px;justify-content:center;line-height:24px;position:absolute;right:8px;text-align:center;top:8px;transition:background-color .3s,transform .3s;width:24px;z-index:1}.delete-button:hover{background-color:red;transform:scale(1.1)}@media (max-width:600px){.delete-button{font-size:14px;height:20px;line-height:20px;width:20px}.batch-operation-bar{align-items:stretch;flex-direction:column;gap:8px;padding:8px 12px}.batch-actions{flex-wrap:wrap;justify-content:center}.batch-btn{flex:1 1;font-size:12px;max-width:70px;min-width:40px;padding:4px 6px}.selection-checkbox{height:20px;width:20px}.checkmark{font-size:12px}}.action-menu-grid-item{height:200px;margin-bottom:15px;position:relative;width:100%}.action-menu-grid-item,.action-menu-trigger{align-items:center;display:flex;justify-content:center}.action-menu-trigger{background-color:#e8f0fe;border:2px solid #4285f4;border-radius:12px;color:#4285f4;cursor:pointer;font-size:24px;font-weight:700;height:120px;outline:none;transition:all .2s ease;width:80%}.action-menu-trigger:hover{background-color:#d2e3fc;transform:scale(1.05)}.action-menu-trigger:active{transform:scale(.95)}.action-menu-trigger:disabled{cursor:not-allowed;opacity:.6;transform:none}.action-menu-overlay{background-color:#0000004d;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.action-menu-popup{animation:menuSlideIn .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026;left:50%;min-width:200px;padding:16px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:1001}@keyframes menuSlideIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.action-menu-item{align-items:flex-start;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;font-size:16px;font-weight:500;margin-bottom:8px;outline:none;padding:12px 16px;transition:all .2s ease;width:100%}.action-menu-item:last-child{margin-bottom:0}.action-menu-item:hover{background:#e9ecef;border-color:#4285f4}.action-menu-item:active{transform:scale(.98)}.action-menu-item:disabled{cursor:not-allowed;opacity:.6;transform:none}.upload-btn{color:#4285f4}.sync-btn{color:#34a853}.action-menu-item-desc{color:#6c757d;font-size:12px;font-weight:400;margin-top:2px}.action-menu-error{background:#fff;border:1px solid #dc3545;border-radius:8px;box-shadow:0 4px 12px #0000001a;color:#dc3545;font-size:14px;left:50%;max-width:300px;padding:12px;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:1001}.image-grid-container{margin:0 auto;padding:10px;width:100%}.image-grid-container.multi-select-active{padding-bottom:70px}.my-masonry-grid{display:flex;margin-left:-10px;width:auto}.my-masonry-grid_column{background-clip:padding-box;padding-left:10px}.image-grid-container.multi-select-active .my-masonry-grid{padding-bottom:10px}.image-item{border-radius:8px;cursor:pointer;margin-bottom:10px;overflow:hidden}.image-item img{border-radius:8px;display:block;object-fit:cover;width:100%}.end,.loading{color:#555;margin:20px 0;text-align:center}.image-loading-placeholder{align-items:center;background:#f5f5f5;border:2px dashed #ddd;border-radius:8px;display:flex;justify-content:center;margin-bottom:10px;min-height:200px}.placeholder-content{align-items:center;color:#888;display:flex;flex-direction:column;font-size:14px;gap:10px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #ddd;border-radius:50%;border-top-color:#007bff;height:20px;width:20px}.overlay{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#fff3;bottom:0;display:flex;justify-content:center;left:0;opacity:0;overscroll-behavior:contain;position:fixed;right:0;top:0;touch-action:none;transition:opacity .3s ease-in-out;z-index:1000}.overlay.ReactModal__Overlay--after-open{opacity:1}.modal,.overlay.ReactModal__Overlay--before-close{opacity:0}.modal{align-items:center;background:#0000;border:none;box-shadow:none;display:flex;justify-content:center;outline:none;padding:0;position:relative;transform:scale(.9);transition:opacity .3s ease-in-out,transform .3s ease-in-out}.ReactModal__Content--after-open{opacity:1;transform:scale(1)}.ReactModal__Content--before-close{opacity:0;transform:scale(.9)}.modal-content{align-items:center;border:none;box-shadow:none;display:flex;height:auto;justify-content:center;max-height:90vh;max-width:90vw;outline:none;position:relative;width:auto}.modal.portrait .modal-content{height:60vh;width:30vw}.modal.landscape .modal-content{height:50vh;width:50vw}.modal-image{border:none;border-radius:8px;max-height:100%;max-width:100%;object-fit:contain;outline:none}.modal *{border:none!important;box-shadow:none!important;outline:none!important}.nav-button{align-items:center;background:#fff0;border:none;color:#111;cursor:pointer;display:flex;font-size:24px;height:100px;justify-content:center;opacity:0;position:fixed;top:50%;transform:translateY(-50%);transition:opacity .3s ease,background .3s ease;width:50px;z-index:9999}.nav-button:hover{background:#4e4d4d33;opacity:1}.nav-button.prev{left:20px}.nav-button.next{right:20px}@media (max-width:600px){.image-grid-container.multi-select-active{padding-bottom:90px}.modal-content{height:80vh;width:80vw}}@media (min-width:601px) and (max-width:1200px){.modal-content{height:80vh;width:50vw}.modal.landscape .modal-content{height:50vh}}@media (min-width:1201px){.modal.portrait .modal-content{height:60vh;width:30vw}.modal.landscape .modal-content{height:50vh;width:50vw}}.confirm-dialog-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.confirm-dialog{animation:confirmDialogFadeIn .2s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 25px #0003;max-width:400px;padding:24px;width:90%}@keyframes confirmDialogFadeIn{0%{opacity:0;transform:scale(.9) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-dialog-title{color:#333;font-size:18px;font-weight:600;margin-bottom:12px;text-align:center}.confirm-dialog-message{color:#666;font-size:16px;line-height:1.4;margin-bottom:24px;text-align:center}.confirm-dialog-buttons{display:flex;gap:12px;justify-content:center}.confirm-dialog-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:16px;font-weight:500;min-height:44px;padding:12px 24px;transition:all .2s ease}.confirm-dialog-btn.cancel-btn{background-color:#f5f5f5;border:1px solid #ddd;color:#666}.confirm-dialog-btn.cancel-btn:hover{background-color:#e8e8e8}.confirm-dialog-btn.cancel-btn:active{background-color:#ddd}.confirm-dialog-btn.confirm-btn{background-color:#dc3545;color:#fff}.confirm-dialog-btn.confirm-btn:hover{background-color:#c82333}.confirm-dialog-btn.confirm-btn:active{background-color:#bd2130}@media (max-width:480px){.confirm-dialog{margin:20px;padding:20px}.confirm-dialog-title{font-size:16px}.confirm-dialog-message{font-size:14px}.confirm-dialog-buttons{flex-direction:column}.confirm-dialog-btn{font-size:16px;min-height:48px}}.sync-manager{background:#fff;border-radius:8px;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.sync-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #eee;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:15px 20px}.sync-header h3{color:#333;margin:0}.close-btn{align-items:center;border-radius:50%;display:flex;height:30px;justify-content:center;padding:0;width:30px}.close-btn:hover{background-color:#e9ecef}.sync-body{flex:1 1;overflow-y:auto;padding:20px}.device-selection{margin-bottom:20px}.device-selection label{color:#333;display:block;font-weight:700;margin-bottom:8px}.device-selection select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.sync-mode-selection{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-top:20px;padding:15px}.sync-mode-options{display:flex;flex-direction:column;gap:12px}.sync-mode-option{align-items:flex-start;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;display:flex;padding:10px;transition:all .2s}.sync-mode-option:hover{background:#f1f3f4;border-color:#007bff}.sync-mode-option input[type=radio]{accent-color:#007bff;margin-right:10px;margin-top:2px}.sync-mode-option input[type=radio]:disabled{cursor:not-allowed;opacity:.5}.sync-mode-option:has(input:disabled){cursor:not-allowed;opacity:.6}.sync-mode-option:has(input:disabled):hover{background:#fff;border-color:#ddd}.sync-mode-label{display:flex;flex:1 1;flex-direction:column}.sync-mode-label small{color:#6c757d;font-size:12px;font-weight:400;margin-top:4px}.sync-mode-option:has(input:checked){background:#e7f3ff;border-color:#007bff}.sync-mode-option:has(input:checked) .sync-mode-label{color:#0056b3}.sync-mode-option:has(input:checked) .sync-mode-label small{color:#495057}.sync-id-info{color:#6c757d;font-family:Courier New,monospace;margin-top:8px;text-align:center}.bidirectional-info{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:6px;margin-top:15px;padding:15px}.bidirectional-info h4{color:#1565c0;font-size:14px;font-weight:600;margin:0 0 15px}.phase-indicators{align-items:center;display:flex;gap:15px;justify-content:center}.phase-indicator{align-items:center;display:flex;flex-direction:column;text-align:center;transition:all .3s}.phase-indicator.pending{opacity:.4}.phase-indicator.active{transform:scale(1.1)}.phase-indicator.completed{opacity:.7}.phase-number{align-items:center;border-radius:50%;display:flex;font-weight:700;height:32px;justify-content:center;margin-bottom:8px;transition:all .3s;width:32px}.phase-indicator.pending .phase-number{background:#e0e0e0;color:#9e9e9e}.phase-indicator.active .phase-number{background:#2196f3;box-shadow:0 0 15px #2196f366;color:#fff}.phase-indicator.completed .phase-number{background:#4caf50;color:#fff}.phase-text{color:#424242;font-size:12px;line-height:1.3;max-width:80px}.phase-arrow{color:#757575;font-size:18px;font-weight:700}.sync-duration{color:#6c757d;font-style:italic;margin-top:10px;text-align:center}@media (max-width:768px){.phase-indicators{gap:10px}.phase-number{font-size:12px;height:28px;width:28px}.phase-text{font-size:11px;max-width:70px}.phase-arrow{font-size:16px}}.sync-controls{display:flex;gap:10px;margin-bottom:20px}.sync-buttons{display:flex;gap:15px;width:100%}.sync-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:14px;font-weight:600;gap:6px;justify-content:center;min-height:80px;padding:16px 20px;text-align:center;transition:all .3s ease}.sync-btn small{font-size:11px;font-weight:400;line-height:1.3;max-width:160px;opacity:.8}.unidirectional-btn{background:linear-gradient(135deg,#17a2b8,#138496);border:2px solid #0000;color:#fff}.unidirectional-btn:hover{background:linear-gradient(135deg,#138496,#117a8b);box-shadow:0 4px 12px #17a2b84d;transform:translateY(-2px)}.bidirectional-btn{background:linear-gradient(135deg,#28a745,#20c997);border:2px solid #0000;color:#fff}.bidirectional-btn:hover{background:linear-gradient(135deg,#20c997,#17a2b8);box-shadow:0 4px 12px #28a7454d;transform:translateY(-2px)}.sync-btn:active{transform:translateY(0)}.start-sync-btn{background:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background-color .2s}.start-sync-btn:hover:not(:disabled){background:#218838}.start-sync-btn:disabled{background:#6c757d;cursor:not-allowed}.reset-btn{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background-color .2s}.reset-btn:hover{background:#5a6268}.sync-progress{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin:20px 0;padding:20px}.progress-info{align-items:center;display:flex;font-weight:500;justify-content:space-between;margin-bottom:12px}.progress-bar{background:#e9ecef;border-radius:4px;height:8px;margin-bottom:10px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#007bff,#0056b3);border-radius:4px;height:100%;transition:width .3s ease}.progress-details{color:#666;font-size:14px;margin-top:8px;text-align:center}.file-name{color:#666;font-size:12px;margin-top:8px;word-break:break-all}.error-message{background:#f8d7da;border-radius:4px;color:#721c24;font-size:14px;margin-top:10px;padding:10px}.merge-summary{background:#e7f7ef;border-left:4px solid #28a745;border-radius:6px;margin-top:15px;padding:15px}.merge-summary h4{color:#155724;font-size:14px;font-weight:600;margin:0 0 12px}.merge-stats{display:flex;gap:15px;justify-content:space-between}.stat-item{align-items:center;display:flex;flex:1 1;flex-direction:column;text-align:center}.stat-label{color:#6c757d;font-size:12px;font-weight:500;margin-bottom:4px}.stat-value{color:#155724;font-size:18px;font-weight:700}@media (max-width:768px){.merge-stats{flex-direction:column;gap:10px}.stat-item{flex-direction:row;justify-content:space-between;text-align:left}.stat-label{font-size:14px;margin-bottom:0}}.sync-logs{margin:20px 0}.sync-logs h4{color:#333;font-size:16px;margin:0 0 10px}.logs-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;font-family:Courier New,monospace;font-size:12px;max-height:200px;overflow-y:auto;padding:12px}.log-entry{color:#495057;line-height:1.4;margin-bottom:4px;word-break:break-all}.log-entry:last-child{margin-bottom:0}.sync-instructions{background:#e7f3ff;border-left:4px solid #007bff;border-radius:6px;margin-top:20px;padding:15px}.sync-instructions h4{color:#333;font-size:16px;margin:0 0 12px}.sync-instructions ul{list-style:none;margin:0;padding-left:20px}.sync-instructions li{color:#495057;line-height:1.5;margin-bottom:8px;position:relative}.sync-instructions li:last-child{margin-bottom:0}@media (max-width:768px){.sync-manager{height:100%;width:100%}.sync-body{padding:15px}.sync-buttons,.sync-controls{flex-direction:column}.sync-buttons{gap:12px}.sync-btn{min-height:70px;padding:14px 16px}.reset-btn,.start-sync-btn{width:100%}}.logs-container::-webkit-scrollbar,.sync-body::-webkit-scrollbar{width:6px}.logs-container::-webkit-scrollbar-track,.sync-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.logs-container::-webkit-scrollbar-thumb,.sync-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.logs-container::-webkit-scrollbar-thumb:hover,.sync-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.device-selection-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.device-selection-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;display:flex;flex-direction:column;max-height:80vh;max-width:600px;width:90%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.device-selection-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:20px 24px}.device-selection-header h3{color:#333;font-size:18px;font-weight:600;margin:0}.close-btn{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:24px;line-height:1;padding:4px;transition:background-color .2s}.close-btn:hover{background-color:#f5f5f5;color:#333}.device-selection-content{flex:1 1;overflow-y:auto;padding:24px}.loading-state{align-items:center;color:#666;display:flex;flex-direction:column;padding:40px 20px}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:32px;margin-bottom:16px;width:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-state{align-items:center;color:#dc3545;display:flex;flex-direction:column;padding:40px 20px;text-align:center}.error-icon{font-size:32px;margin-bottom:12px}.retry-btn{background-color:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-top:16px;padding:8px 16px;transition:background-color .2s}.retry-btn:hover{background-color:#0056b3}.device-selection-toolbar{align-items:center;background-color:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.device-count,.refresh-btn{color:#666;font-size:14px}.refresh-btn{background:none;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;padding:6px 12px;transition:all .2s}.refresh-btn:hover{background-color:#e9ecef;border-color:#adb5bd}.device-list{max-height:400px;overflow-y:auto}.empty-state{color:#666;padding:60px 20px;text-align:center}.empty-icon{display:block;font-size:48px;margin-bottom:16px}.empty-state h4{color:#333;font-size:18px;margin:0 0 12px}.empty-state p{font-size:14px;line-height:1.5;margin:8px 0}.device-item{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:12px;padding:16px;transition:all .2s}.device-item:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff1a;transform:translateY(-1px)}.device-item:last-child{margin-bottom:0}.device-info{flex:1 1}.device-code-section{align-items:center;display:flex;gap:12px;margin-bottom:8px}.device-code{color:#007bff;font-family:Courier New,monospace;font-size:20px;font-weight:700;letter-spacing:1px}.online-indicator{background-color:#d4edda;border-radius:12px;color:#28a745;font-size:12px;font-weight:500;padding:2px 8px}.device-details{display:flex;flex-direction:column;gap:4px}.device-id,.last-connected{color:#666;font-size:13px}.device-id{font-family:Courier New,monospace}.device-actions{margin-left:16px}.select-btn{background-color:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.select-btn:hover{background-color:#0056b3}.device-selection-footer{align-items:center;background-color:#f8f9fa;border-top:1px solid #e9ecef;display:flex;justify-content:space-between;padding:20px 24px}.cancel-btn{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s}.cancel-btn:hover{background-color:#545b62}.help-text{color:#666;font-size:13px;font-style:italic}@media (max-width:768px){.device-selection-modal{margin:20px;width:95%}.device-item{align-items:stretch;flex-direction:column;gap:12px}.device-actions{margin-left:0}.select-btn{padding:12px;width:100%}.device-selection-footer{flex-direction:column;gap:12px;text-align:center}}.device-tabs{border-bottom:1px solid #e9ecef;display:flex;margin-bottom:20px}.tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px 16px;transition:all .2s}.tab-btn.active,.tab-btn:hover{background-color:#f8f9fa;color:#007bff}.tab-btn.active{border-bottom-color:#007bff}.device-item.history-device{background-color:#f8f9fa;border-color:#dee2e6}.device-item.history-device:hover{border-color:#6c757d;box-shadow:0 2px 8px #6c757d1a}.status-indicator{border-radius:12px;font-size:12px;font-weight:500;padding:2px 8px}.status-indicator.online{background-color:#d4edda;color:#28a745}.status-indicator.offline{background-color:#e9ecef;color:#6c757d}.select-btn.history-btn{background-color:#6c757d;color:#fff}.select-btn.history-btn:hover{background-color:#545b62}.device-description{color:#6c757d;font-size:13px;font-style:italic}.storage-status-simple{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:13px;margin-top:16px;padding:12px}.storage-status-simple.warning{background:#fff3cd;border-color:#ffc107}.storage-status-simple.critical{background:#f8d7da;border-color:#dc3545}.storage-status-simple.loading{color:#6c757d;padding:16px;text-align:center}.storage-status-simple.unsupported{background:#fff3cd;border-color:#ffc107;color:#856404;padding:16px;text-align:center}.storage-info{justify-content:space-between;margin-bottom:8px}.storage-info,.storage-item{align-items:center;display:flex}.storage-item{flex-direction:column;gap:2px}.storage-label{color:#6c757d;font-size:12px}.storage-value{color:#495057;font-size:14px;font-weight:600}.storage-value.percentage.warning{color:#856404}.storage-value.percentage.critical{color:#721c24}.storage-bar{background:#e9ecef;border-radius:3px;height:6px;overflow:hidden;position:relative;width:100%}.storage-fill{background:linear-gradient(90deg,#28a745,#ffc107 70%,#dc3545 90%);border-radius:3px;height:100%;transition:width .3s ease}@media (max-width:480px){.storage-info{flex-direction:column;gap:8px}.storage-item{flex-direction:row;justify-content:space-between;width:100%}.storage-item .storage-label{text-align:left}.storage-item .storage-value{text-align:right}}body{font-family:Arial,sans-serif;margin:0;padding:0}*{box-sizing:border-box}body.ReactModal__Body--open,html.ReactModal__Html--open{overflow:hidden}
/*# sourceMappingURL=main.fabe29d6.css.map*/