.container{max-width:1400px;margin:0 auto;padding:20px}.header{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px;box-shadow:0 1px 3px #0000001a}.header h1{font-size:24px;margin-bottom:8px}.header p{color:#666;font-size:14px}.layout{display:grid;grid-template-columns:400px 1fr;gap:20px}.upload-panel{background:#fff;padding:20px;border-radius:8px;box-shadow:0 1px 3px #0000001a;height:fit-content}.upload-zone{border:2px dashed #ccc;border-radius:8px;padding:30px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:20px}.upload-zone:hover{border-color:#999;background:#f9f9f9}.upload-zone.active{border-color:#06c;background:#f0f5ff}.upload-zone input{display:none}.results-panel{display:flex;flex-direction:column;gap:20px}.result-section{background:#fff;padding:20px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.result-section h2{font-size:16px;margin-bottom:12px;border-bottom:1px solid #eee;padding-bottom:8px}.chart-container{width:100%;height:400px;margin-bottom:20px}.peaks-table{width:100%;border-collapse:collapse;font-size:13px}.peaks-table th{background:#f5f5f5;padding:8px;text-align:left;font-weight:600;border-bottom:1px solid #ddd}.peaks-table td{padding:8px;border-bottom:1px solid #eee}.eq-table{width:100%;border-collapse:collapse;font-size:13px}.eq-table th{background:#f5f5f5;padding:8px;text-align:left;font-weight:600;border-bottom:1px solid #ddd}.eq-table td{padding:8px;border-bottom:1px solid #eee}.warning{background:#fff3cd;border:1px solid #ffc107;padding:12px;border-radius:4px;margin-bottom:12px;font-size:13px;color:#856404}.success{background:#d4edda;border:1px solid #28a745;padding:12px;border-radius:4px;margin-bottom:12px;font-size:13px;color:#155724}.loading{text-align:center;padding:20px;color:#666}.spinner{display:inline-block;width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #0066cc;border-radius:50%;animation:spin 1s linear infinite;margin-right:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.stat{background:#f9f9f9;padding:12px;border-radius:4px;border-left:3px solid #0066cc}.stat-label{font-size:12px;color:#666;margin-bottom:4px}.stat-value{font-size:18px;font-weight:600;color:#333}.button{background:#06c;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;transition:background .2s}.button:hover{background:#0052a3}.button:disabled{background:#ccc;cursor:not-allowed}
